<SEC-DOCUMENT>0001193125-23-103662.txt : 20230417
<SEC-HEADER>0001193125-23-103662.hdr.sgml : 20230417
<ACCEPTANCE-DATETIME>20230417161843
ACCESSION NUMBER:		0001193125-23-103662
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		122
CONFORMED PERIOD OF REPORT:	20230131
FILED AS OF DATE:		20230417
DATE AS OF CHANGE:		20230417

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			AstroNova, Inc.
		CENTRAL INDEX KEY:			0000008146
		STANDARD INDUSTRIAL CLASSIFICATION:	COMPUTER PERIPHERAL EQUIPMENT, NEC [3577]
		IRS NUMBER:				050318215
		STATE OF INCORPORATION:			RI
		FISCAL YEAR END:			0131

	FILING VALUES:
		FORM TYPE:		10-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	000-13200
		FILM NUMBER:		23824189

	BUSINESS ADDRESS:	
		STREET 1:		600 E GREENWICH AVENUE
		CITY:			WEST WARWICK
		STATE:			RI
		ZIP:			02893
		BUSINESS PHONE:		4018284000

	MAIL ADDRESS:	
		STREET 1:		600 E GREENWICH AVENUE
		CITY:			WEST WARWICK
		STATE:			RI
		ZIP:			02893

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	ASTRO MED INC /NEW/
		DATE OF NAME CHANGE:	19920703

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	ATLAN TOL INDUSTRIES INC
		DATE OF NAME CHANGE:	19850220
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>d415415d10k.htm
<DESCRIPTION>10-K
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8" ?>
<html xmlns:alot="http://astro-med.com/20230131" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:deprecated="http://www.xbrl.org/2009/arcrole/deprecated" xmlns:country="http://xbrl.sec.gov/country/2022" xmlns:currency="http://xbrl.sec.gov/currency/2022" xmlns:exch="http://xbrl.sec.gov/exch/2022" xmlns:naics="http://xbrl.sec.gov/naics/2022" xmlns:sic="http://xbrl.sec.gov/sic/2022" xmlns:stpr="http://xbrl.sec.gov/stpr/2022" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:us-gaap-supplement="http://fasb.org/us-gaap-sup/2022q3" xmlns:srt-supplement="http://fasb.org/srt-sup/2022q3" xmlns:srt="http://fasb.org/srt/2022" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:xbrll="http://www.xbrl.org/2003/linkbase" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>10-K</title>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>
</head>
<body style="">
 <div style='display: none'><ix:header><ix:hidden><ix:nonNumeric name="dei:AmendmentFlag" contextRef="P02_01_2022To01_31_2023">false</ix:nonNumeric><ix:nonNumeric name="dei:DocumentFiscalPeriodFocus" contextRef="P02_01_2022To01_31_2023">FY</ix:nonNumeric><ix:nonNumeric name="dei:EntityCentralIndexKey" contextRef="P02_01_2022To01_31_2023">0000008146</ix:nonNumeric><ix:footnote id="FN_259972" xml:lang="en-US">Beginning in fiscal 2023, changes to Section 174 of the Internal Revenue Code made by the Tax Cuts and Jobs Act of 2017 no longer permit an immediate deduction for research and development expenditures in the tax year that such costs are incurred. These costs are capitalized resulting in an increase in deferred tax assets of $1.2 million.</ix:footnote ></ix:hidden><ix:references><link:schemaRef xlink:type="simple" xlink:href="alot-20230131.xsd" /><link:linkbaseRef xlink:type="simple" xlink:href="alot-20230131_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" /><link:linkbaseRef xlink:type="simple" xlink:href="alot-20230131_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" /><link:linkbaseRef xlink:type="simple" xlink:href="alot-20230131_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" /><link:linkbaseRef xlink:type="simple" xlink:href="alot-20230131_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" /></ix:references><ix:resources><xbrli:context id="P02_01_2022To01_31_2023" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn08_04_2022" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-08-04</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2021" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P08_04_2022To08_04_2022" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-08-04</xbrli:startDate> <xbrli:endDate>2022-08-04</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn07_30_2022" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-07-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn04_12_2023" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-04-12</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn10_30_2021" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-10-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn03_22_2022" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-03-22</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2020" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_OthersCountriesMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >alot:OthersCountriesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CentralAndSouthAmericaMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >alot:CentralAndSouthAmericaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_AsiaMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:AsiaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CAsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:CA</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_EuropeMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:EuropeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_USsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:US</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_ServiceAndOtherMembersrtProductOrServiceAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >alot:ServiceAndOtherMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_SuppliesMembersrtProductOrServiceAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >alot:SuppliesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_HardwareProductsMembersrtProductOrServiceAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >alot:HardwareProductsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" >alot:RangeThreeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" >alot:RangeFourMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" >alot:RangeFiveMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:ProductIdentificationMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:TestAndMeasurementMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_OtherCountriesMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >alot:OtherCountriesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >alot:CustomerMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_TradeAccountsPayablesMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >alot:TradeAccountsPayablesMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >alot:CustomerMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis" >us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CorporateNonSegmentMembersrtConsolidationItemsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_LandImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis" >us-gaap:LandImprovementsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MaximumMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_BuildingAndLeaseholdImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis" >alot:BuildingAndLeaseholdImprovementsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MaximumMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_LandImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MinimumMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis" >us-gaap:LandImprovementsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_BuildingAndLeaseholdImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MinimumMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis" >alot:BuildingAndLeaseholdImprovementsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_MachineryAndEquipmentMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MaximumMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis" >us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_ComputerEquipmentAndSoftwareMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis" >alot:ComputerEquipmentAndSoftwareMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MaximumMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_MachineryAndEquipmentMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MinimumMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis" >us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_ComputerEquipmentAndSoftwareMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MinimumMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis" >alot:ComputerEquipmentAndSoftwareMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:CommonStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_AirborneProductMembersrtProductOrServiceAxis_MinimumMembersrtRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MinimumMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >alot:AirborneProductMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_AirborneProductMembersrtProductOrServiceAxis_MaximumMembersrtRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MaximumMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >alot:AirborneProductMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_TreasuryStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:TreasuryStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_ForeignExchangeMemberusgaapTradingActivityByTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:TradingActivityByTypeAxis" >us-gaap:ForeignExchangeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:RetainedEarningsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_RestrictedStockUnitsRSUMemberusgaapAwardTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_EmployeeStockPurchasePlanMemberusgaapPlanNameAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis" >alot:EmployeeStockPurchasePlanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CNsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:CN</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMemberusgaapPlanNameAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis" >alot:TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_PriorEmployeeStockPurchasePlanMemberusgaapPlanNameAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis" >alot:PriorEmployeeStockPurchasePlanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_RestrictedStockAwardMemberusgaapAwardTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >alot:RestrictedStockAwardMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis" >alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis" >us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis" >alot:CashFlowHedgeMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis" >us-gaap:CrossCurrencyInterestRateContractMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_OtherExpenseMemberusgaapIncomeStatementLocationAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis" >us-gaap:OtherExpenseMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_MinimumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MinimumMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_MaximumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MaximumMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >alot:GreenwoodCreditUnionMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_LondonInterbankOfferedRateLIBORMemberusgaapVariableRateAxis_MinimumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis" >us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MinimumMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_LondonInterbankOfferedRateLIBORMemberusgaapVariableRateAxis_MaximumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MaximumMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis" >us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_FederalFundsEffectiveSwapRateMemberusgaapVariableRateAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis" >us-gaap:FederalFundsEffectiveSwapRateMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_LondonInterbankOfferedRateLIBORMemberusgaapVariableRateAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis" >us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis_PromissoryNoteMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >alot:PromissoryNoteMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:GreenwoodCreditUnionMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ChangeInAccountingEstimateByTypeAxis" >us-gaap:IntangibleAssetsAmortizationPeriodMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerContractsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_PrepaidExpensesAndOtherCurrentAssetsMemberusgaapBalanceSheetLocationAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis" >us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis" >alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerContractsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ChangeInAccountingEstimateByTypeAxis" >us-gaap:IntangibleAssetsAmortizationPeriodMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis" >alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerContractsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:RuggedInformationTechnologyEquipmentCorporationMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerContractsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ChangeInAccountingEstimateByTypeAxis" >us-gaap:IntangibleAssetsAmortizationPeriodMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:RuggedInformationTechnologyEquipmentCorporationMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerContractsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_SellingAndMarketingExpenseMemberusgaapIncomeStatementLocationAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis" >us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:GreenwoodCreditUnionMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis" >us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="alot:CreditAgreementAxis" >alot:SecondAmendmentCreditAgreementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_DomesticCountryMemberusgaapIncomeTaxAuthorityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis" >us-gaap:DomesticCountryMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_AerospaceCustomerMembersrtMajorCustomersAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >alot:AerospaceCustomerMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2022To01_31_2023_CustomerRelatedIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-02-01</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerContractsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis" >alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >alot:DistributorRelationsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:TrojanlabelApSMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >alot:ExistingTechnologyMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:TrojanlabelApSMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerContractsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:RuggedInformationTechnologyEquipmentCorporationMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:MiltopeCorporationMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerContractsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_TermLoanDueAugustFourthTwoThousandAndTwentySevenMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:TermLoanDueAugustFourthTwoThousandAndTwentySevenMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:ProductIdentificationMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:TestAndMeasurementMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_CorporateNonSegmentMembersrtConsolidationItemsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis_FairValueInputsLevel3MemberusgaapFairValueByFairValueHierarchyLevelAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis" >us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis" >us-gaap:EstimateOfFairValueFairValueDisclosureMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis" >us-gaap:EstimateOfFairValueFairValueDisclosureMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_CarryingReportedAmountFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis" >us-gaap:CarryingReportedAmountFairValueDisclosureMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_USsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:US</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_EuropeMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:EuropeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_CAsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:CA</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_AsiaMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:AsiaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:TestAndMeasurementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:ProductIdentificationMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MaximumMembersrtRangeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MaximumMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_BeforeAmendmentToTheCreditAgreementMemberALOTDetailsAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="alot:DetailsAxis" >alot:BeforeAmendmentToTheCreditAgreementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerContractsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:TrademarksMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerContractsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis" >alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:TrojanlabelApSMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >alot:DistributorRelationsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >alot:ExistingTechnologyMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:TrojanlabelApSMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerContractsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:RuggedInformationTechnologyEquipmentCorporationMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerContractsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:MiltopeCorporationMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_TermLoanDueAugustFourthTwoThousandAndTwentySevenMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:TermLoanDueAugustFourthTwoThousandAndTwentySevenMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_BeforeAmendmentToTheCreditAgreementMemberALOTDetailsAxis_TermLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:TermLoanMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="alot:DetailsAxis" >alot:BeforeAmendmentToTheCreditAgreementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis" >alot:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:ProductIdentificationMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:TestAndMeasurementMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_CorporateNonSegmentMembersrtConsolidationItemsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis_FairValueInputsLevel3MemberusgaapFairValueByFairValueHierarchyLevelAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis" >us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis" >us-gaap:EstimateOfFairValueFairValueDisclosureMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis" >us-gaap:EstimateOfFairValueFairValueDisclosureMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_CarryingReportedAmountFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis" >us-gaap:CarryingReportedAmountFairValueDisclosureMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_TwoThousandSevenEquityIncentivePlanMemberusgaapPlanNameAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis" >alot:TwoThousandSevenEquityIncentivePlanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RestrictedStockMemberusgaapAwardTypeAxis_TwoThousandFifteenEquityIncentivePlanMemberusgaapPlanNameAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis" >alot:TwoThousandFifteenEquityIncentivePlanMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >us-gaap:RestrictedStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:TermLoanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_USsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:US</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_EuropeMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:EuropeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_CAsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:CA</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_AsiaMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:AsiaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" >alot:RangeThreeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" >alot:RangeFourMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" >alot:RangeFiveMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:ProductIdentificationMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:TestAndMeasurementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MaximumMembersrtRangeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:RangeAxis" >srt:MaximumMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_CNsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:CN</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_DEsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >stpr:DE</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RestrictedStockUnitsRSUMemberusgaapAwardTypeAxis_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis" >alot:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_PerformanceSharesMemberusgaapAwardTypeAxis_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis" >alot:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >us-gaap:PerformanceSharesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RestrictedStockMemberusgaapAwardTypeAxis_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis" >alot:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >us-gaap:RestrictedStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_EmployeeStockOptionMemberusgaapAwardTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RestrictedStockUnitsRSUMemberusgaapAwardTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_TaxCreditsCarryForwardsMemberALOTDetailsOfIncomeTaxBenefitAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="alot:DetailsOfIncomeTaxBenefitAxis" >alot:TaxCreditsCarryForwardsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMemberusgaapPlanNameAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis" >alot:TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis" >alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >alot:GreenwoodCreditUnionMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="alot:CreditAgreementAxis" >alot:SecondAmendmentCreditAgreementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_DomesticCountryMemberusgaapIncomeTaxAuthorityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis" >us-gaap:DomesticCountryMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_AdditionalForeignTaxCreditMemberALOTDetailsOfIncomeTaxBenefitAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="alot:DetailsOfIncomeTaxBenefitAxis" >alot:AdditionalForeignTaxCreditMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_MeasurementInputRoyaltyRateMemberusgaapMeasurementInputTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis" >alot:MeasurementInputRoyaltyRateMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_MeasurementInputCustomerAttritionRateMemberusgaapMeasurementInputTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis" >alot:MeasurementInputCustomerAttritionRateMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_MeasurementInputDiscountRateMemberusgaapMeasurementInputTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis" >us-gaap:MeasurementInputDiscountRateMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_CustomerRelatedIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_NonCurrentLiabilityMemberusgaapBalanceSheetLocationAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis" >alot:NonCurrentLiabilityMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RoyaltyPaymentsDueInNextTwelveMonthsMemberALOTRoyaltyPaymentsDueAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="alot:RoyaltyPaymentsDueAxis" >alot:RoyaltyPaymentsDueInNextTwelveMonthsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RoyaltyPaymentsDueYearTwoMemberALOTRoyaltyPaymentsDueAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="alot:RoyaltyPaymentsDueAxis" >alot:RoyaltyPaymentsDueYearTwoMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RoyaltyPaymentsDueYearThreeMemberALOTRoyaltyPaymentsDueAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="alot:RoyaltyPaymentsDueAxis" >alot:RoyaltyPaymentsDueYearThreeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RoyaltyPaymentsDueYearFiveMemberALOTRoyaltyPaymentsDueAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="alot:RoyaltyPaymentsDueAxis" >alot:RoyaltyPaymentsDueYearFiveMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RoyaltyPaymentsDueYearFourMemberALOTRoyaltyPaymentsDueAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="alot:RoyaltyPaymentsDueAxis" >alot:RoyaltyPaymentsDueYearFourMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_OthersCountriesMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >alot:OthersCountriesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_CentralAndSouthAmericaMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >alot:CentralAndSouthAmericaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_AsiaMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:AsiaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_CAsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:CA</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_EuropeMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:EuropeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_USsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:US</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_ServiceAndOtherMembersrtProductOrServiceAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >alot:ServiceAndOtherMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_SuppliesMembersrtProductOrServiceAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >alot:SuppliesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_HardwareProductsMembersrtProductOrServiceAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >alot:HardwareProductsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:ProductIdentificationMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:TestAndMeasurementMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_OtherCountriesMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >alot:OtherCountriesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >alot:CustomerMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_TradeAccountsPayablesMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >alot:TradeAccountsPayablesMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >alot:CustomerMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis" >us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_CorporateNonSegmentMembersrtConsolidationItemsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_TreasuryStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:TreasuryStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:CommonStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_ForeignExchangeMemberusgaapTradingActivityByTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:TradingActivityByTypeAxis" >us-gaap:ForeignExchangeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2020To01_31_2021_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:RetainedEarningsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-02-01</xbrli:startDate> <xbrli:endDate>2021-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_OthersCountriesMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >alot:OthersCountriesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_CentralAndSouthAmericaMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >alot:CentralAndSouthAmericaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_AsiaMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:AsiaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_CAsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:CA</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_EuropeMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:EuropeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_USsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:US</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_ServiceAndOtherMembersrtProductOrServiceAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >alot:ServiceAndOtherMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_SuppliesMembersrtProductOrServiceAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >alot:SuppliesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_HardwareProductsMembersrtProductOrServiceAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >alot:HardwareProductsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:ProductIdentificationMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:TestAndMeasurementMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_OtherCountriesMembersrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >alot:OtherCountriesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >alot:CustomerMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_TradeAccountsPayablesMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >alot:TradeAccountsPayablesMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >alot:CustomerMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis" >us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_CorporateNonSegmentMembersrtConsolidationItemsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:CommonStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_TreasuryStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:TreasuryStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_ForeignExchangeMemberusgaapTradingActivityByTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:TradingActivityByTypeAxis" >us-gaap:ForeignExchangeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:RetainedEarningsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_PriorEmployeeStockPurchasePlanMemberusgaapPlanNameAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis" >alot:PriorEmployeeStockPurchasePlanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis" >alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis" >us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis" >alot:CashFlowHedgeMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis" >us-gaap:CrossCurrencyInterestRateContractMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_OtherExpenseMemberusgaapIncomeStatementLocationAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis" >us-gaap:OtherExpenseMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_NonoperatingIncomeExpenseMemberusgaapIncomeStatementLocationAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis" >us-gaap:NonoperatingIncomeExpenseMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P02_01_2021To01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-02-01</xbrli:startDate> <xbrli:endDate>2022-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn05_06_2020_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >alot:GreenwoodCreditUnionMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-05-06</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn05_06_2020_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:GreenwoodCreditUnionMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-05-06</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P06_15_2021To06_15_2021_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >alot:GreenwoodCreditUnionMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-06-15</xbrli:startDate> <xbrli:endDate>2021-06-15</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P06_15_2021To06_15_2021_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:GreenwoodCreditUnionMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-06-15</xbrli:startDate> <xbrli:endDate>2021-06-15</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P08_04_2022To08_04_2022_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-08-04</xbrli:startDate> <xbrli:endDate>2022-08-04</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P08_04_2022To08_04_2022_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-08-04</xbrli:startDate> <xbrli:endDate>2022-08-04</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P08_04_2022To08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-08-04</xbrli:startDate> <xbrli:endDate>2022-08-04</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P08_04_2022To08_04_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="alot:CreditAgreementAxis" >alot:SecondAmendmentCreditAgreementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-08-04</xbrli:startDate> <xbrli:endDate>2022-08-04</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn08_04_2022_AdditionalTermLoanAvailedMemberALOTDetailsOneAxis_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis_TermLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="alot:CreditAgreementAxis" >alot:SecondAmendmentCreditAgreementMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="alot:DetailsOneAxis" >alot:AdditionalTermLoanAvailedMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:TermLoanMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-08-04</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-08-04</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P08_04_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-08-04</xbrli:startDate> <xbrli:endDate>2023-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P10_31_2022To07_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_TermLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:TermLoanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-10-31</xbrli:startDate> <xbrli:endDate>2023-07-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P10_31_2023To04_30_2027_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_TermLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis" >alot:BankOfAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:TermLoanMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2023-10-31</xbrli:startDate> <xbrli:endDate>2027-04-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P05_02_2021To07_31_2021_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis" >alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >alot:GreenwoodCreditUnionMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-05-02</xbrli:startDate> <xbrli:endDate>2021-07-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P08_01_2021To10_30_2021_CashFlowHedgingMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis" >us-gaap:CrossCurrencyInterestRateContractMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis" >us-gaap:CashFlowHedgingMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-08-01</xbrli:startDate> <xbrli:endDate>2021-10-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P08_01_2021To10_30_2021_CashFlowHedgingMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis" >us-gaap:CashFlowHedgingMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-08-01</xbrli:startDate> <xbrli:endDate>2021-10-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_30_2020To07_30_2020_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis" >us-gaap:CrossCurrencyInterestRateContractMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-07-30</xbrli:startDate> <xbrli:endDate>2020-07-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2021To06_30_2021_CaresActMemberusgaapUnusualOrInfrequentItemAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:UnusualOrInfrequentItemAxis" >alot:CaresActMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-01-01</xbrli:startDate> <xbrli:endDate>2021-06-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2021To07_31_2021_CaresActMemberusgaapUnusualOrInfrequentItemAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:UnusualOrInfrequentItemAxis" >alot:CaresActMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-07-01</xbrli:startDate> <xbrli:endDate>2021-07-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P03_22_2022To03_22_2022_CaresActMemberusgaapUnusualOrInfrequentItemAxis_PrepaidExpensesAndOtherCurrentAssetsMemberusgaapBalanceSheetLocationAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis" >us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:UnusualOrInfrequentItemAxis" >alot:CaresActMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2022-03-22</xbrli:startDate> <xbrli:endDate>2022-03-22</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P10_30_2021To10_30_2021_CostOfSalesMemberusgaapIncomeStatementLocationAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis" >us-gaap:CostOfSalesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-10-30</xbrli:startDate> <xbrli:endDate>2021-10-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P10_30_2021To10_30_2021_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis" >us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-10-30</xbrli:startDate> <xbrli:endDate>2021-10-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2018_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis" >alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2018-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P01_31_2018To01_31_2018_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis" >alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2018-01-31</xbrli:startDate> <xbrli:endDate>2018-01-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:ProductIdentificationMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis" >us-gaap:OperatingSegmentsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis" >alot:TestAndMeasurementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2022_AerospaceCustomerMembersrtMajorCustomersAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >alot:AerospaceCustomerMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P05_01_2021To07_31_2021_ChangeInAccountingMethodAccountedForAsChangeInEstimateMemberusgaapChangeInAccountingEstimateByTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ChangeInAccountingEstimateByTypeAxis" >us-gaap:ChangeInAccountingMethodAccountedForAsChangeInEstimateMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2021-05-01</xbrli:startDate> <xbrli:endDate>2021-07-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis" >us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis" >us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:CommonStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:RetainedEarningsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_TreasuryStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:TreasuryStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2023_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2023-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2020_TreasuryStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:TreasuryStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:RetainedEarningsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:CommonStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2020_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2020_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2020_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis" >us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2021_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis" >us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:CommonStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2021_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2021_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:RetainedEarningsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2021_TreasuryStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:TreasuryStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2021_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2021-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:CommonStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:RetainedEarningsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_TreasuryStockMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:TreasuryStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn01_31_2022_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000008146</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2022-01-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:unit id="Unit_USD" > <xbrli:measure>iso4217:USD</xbrli:measure> </xbrli:unit><xbrli:unit id="Unit_shares" > <xbrli:measure>xbrli:shares</xbrli:measure> </xbrli:unit><xbrli:unit id="Unit_pure" > <xbrli:measure>xbrli:pure</xbrli:measure> </xbrli:unit><xbrli:unit id="Unit_Year" > <xbrli:measure>utr:Year</xbrli:measure> </xbrli:unit><xbrli:unit id="Unit_sqft" > <xbrli:measure>utr:sqft</xbrli:measure> </xbrli:unit><xbrli:unit id="Unit_USD_per_Share" > <xbrli:divide> <xbrli:unitNumerator> <xbrli:measure>iso4217:USD</xbrli:measure> </xbrli:unitNumerator> <xbrli:unitDenominator> <xbrli:measure>xbrli:shares</xbrli:measure> </xbrli:unitDenominator> </xbrli:divide> </xbrli:unit><xbrli:unit id="Unit_Segment" > <xbrli:measure>alot:Segment</xbrli:measure> </xbrli:unit><ix:relationship fromRefs="Fact_75771699" toRefs="FN_259972"/><ix:relationship fromRefs="Fact_75771700" toRefs="FN_259972"/></ix:resources></ix:header></div><div style="text-align: center;"><div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><div style="line-height: 1pt; margin-top: 0pt; margin-bottom: 0pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"></div><div style="line-height: 3pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 16pt; margin-top: 4pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 16pt; letter-spacing: 0px; top: 0px;;display:inline;">UNITED STATES </div></div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 16pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 16pt; letter-spacing: 0px; top: 0px;;display:inline;">SECURITIES AND EXCHANGE COMMISSION </div></div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Washington, D.C. 20549 </div></div></div></div><div style="font-size: 3pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 3pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center;;text-indent: 0px;"><div style="margin: 0pt auto 2pt; width: 21%; text-align: center; line-height: 6pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 16pt; margin-top: 3pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">FORM <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:DocumentType" contextRef="P02_01_2022To01_31_2023">10-K</ix:nonNumeric></div> </div></div></div><div style="font-size: 3pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 3pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center;;text-indent: 0px;"><div style="margin: 0pt auto 2pt; width: 21%; text-align: center; line-height: 6pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div></div><div style="font-size: 3pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 3pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div><ix:nonNumeric name="dei:DocumentAnnualReport" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:boolballotbox">&#9746;</ix:nonNumeric><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></div></td>
<td style="vertical-align: top;;text-align:left;"><div style="text-align: left; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934 </div></div></div></div></td></tr></table><div style="clear:both;max-height:0pt;;text-indent: 0px;"></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">For the fiscal year ended <ix:nonNumeric name="dei:DocumentPeriodEndDate" contextRef="P02_01_2022To01_31_2023" format="ixt:date-monthname-day-year-en"><ix:nonNumeric name="dei:CurrentFiscalYearEndDate" contextRef="P02_01_2022To01_31_2023" format="ixt:date-monthname-day-en">January 31</ix:nonNumeric>, <ix:nonNumeric name="dei:DocumentFiscalYearFocus" contextRef="P02_01_2022To01_31_2023">2023</ix:nonNumeric></ix:nonNumeric> </div></div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">OR </div></div></div></div><div style="font-size: 3pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 3pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div><ix:nonNumeric name="dei:DocumentTransitionReport" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></div></td>
<td style="vertical-align: top;;text-align:left;"><div style="text-align: left; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934 </div></div></div></div></td></tr></table><div style="clear:both;max-height:0pt;;text-indent: 0px;"></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">For the transition period from <div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div> to <div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div> </div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Commission file number <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntityFileNumber" contextRef="P02_01_2022To01_31_2023">0-13200</ix:nonNumeric></div> </div></div></div><div style="font-size: 3pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 3pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center;;text-indent: 0px;"><div style="margin: 0pt auto 2pt; width: 21%; text-align: center; line-height: 6pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 20pt; margin-top: 3pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 20pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntityRegistrantName" contextRef="P02_01_2022To01_31_2023">AstroNova, Inc.</ix:nonNumeric> </div></div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">(Exact name of registrant as specified in its charter) </div></div></div></div><div style="font-size: 3pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 3pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center;;text-indent: 0px;"><div style="margin: 0pt auto 2pt; width: 21%; text-align: center; line-height: 6pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div></div><div style="font-size: 3pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 3pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 50%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 48%;"></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: top;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><ix:nonNumeric name="dei:EntityIncorporationStateCountryCode" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:stateprovnameen">Rhode Island</ix:nonNumeric></div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: top;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntityTaxIdentificationNumber" contextRef="P02_01_2022To01_31_2023">05-0318215</ix:nonNumeric></div></div></div></div></td></tr>
<tr style="font-family: Times New Roman; font-size: 7pt; page-break-inside: avoid;">
<td style="vertical-align: top;;text-align:center;"><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 7pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 7pt; letter-spacing: 0px; top: 0px;;display:inline;">(State or other jurisdiction of</div></div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 7pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 7pt; letter-spacing: 0px; top: 0px;;display:inline;">incorporation or organization)</div></div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: top;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(I.R.S. Employer Identification No.)</div></div></div></td></tr>
<tr style="font-size: 1pt;">
<td style="height: 3pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td>
<td colspan="2" style="height: 3pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: top;;text-align:center;"><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntityAddressAddressLine1" contextRef="P02_01_2022To01_31_2023">600 East Greenwich Avenue</ix:nonNumeric>,</div></div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntityAddressCityOrTown" contextRef="P02_01_2022To01_31_2023">West Warwick</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressStateOrProvince" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:stateprovnameen">Rhode Island</ix:nonNumeric></div></div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><ix:nonNumeric name="dei:EntityAddressPostalZipCode" contextRef="P02_01_2022To01_31_2023">02893</ix:nonNumeric></div></div></div></td></tr>
<tr style="font-family: Times New Roman; font-size: 7pt; page-break-inside: avoid;">
<td style="vertical-align: top;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Address of principal executive offices)</div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: top;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Zip Code)</div></div></div></td></tr></table><div style="clear:both;max-height:0pt;;text-indent: 0px;"></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Registrant&#8217;s telephone number, including area code: <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">(<ix:nonNumeric name="dei:CityAreaCode" contextRef="P02_01_2022To01_31_2023">401</ix:nonNumeric>)&#160;<ix:nonNumeric name="dei:LocalPhoneNumber" contextRef="P02_01_2022To01_31_2023">828-4000</ix:nonNumeric></div> </div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Securities registered pursuant to Section&#160;12(b) of the Act: </div></div></div></div><div style="font-size: 3pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 3pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 34%;"></td>
<td style="vertical-align: bottom;"></td>
<td style="width: 32%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 32%;"></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; white-space: nowrap;;text-align:center;"><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: inline-block; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Title of each class</div></div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:center;"><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: inline-block; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Trading<br/>Symbol</div></div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:center;"><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Name&#160;of&#160;each&#160;exchange</div></div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; border-bottom: 1pt solid rgb(0, 0, 0); display: inline-block; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">on&#160;which&#160;registered</div></div></div></div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: top;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><ix:nonNumeric name="dei:Security12bTitle" contextRef="P02_01_2022To01_31_2023">Common Stock</ix:nonNumeric>, $.05 Par Value</div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: top;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><ix:nonNumeric name="dei:TradingSymbol" contextRef="P02_01_2022To01_31_2023">ALOT</ix:nonNumeric></div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: top;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><ix:nonNumeric name="dei:SecurityExchangeName" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:exchnameen">NASDAQ Global Market</ix:nonNumeric></div></div></div></td></tr></table><div style="clear:both;max-height:0pt;;text-indent: 0px;"></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Securities registered pursuant to Section&#160;12(g) of the Act: None </div></div></div></div><div style="font-size: 3pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 3pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center;;text-indent: 0px;"><div style="margin: 0pt auto 2pt; width: 21%; text-align: center; line-height: 6pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act.&#160;&#160;&#160;&#160;Yes&#160;&#160;&#9744;&#160;&#160;&#160;&#160;<ix:nonNumeric name="dei:EntityWellKnownSeasonedIssuer" contextRef="P02_01_2022To01_31_2023">No</ix:nonNumeric>&#160;&#160;&#9746; </div></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Indicate by check mark if the registrant is not required to file reports pursuant to Section&#160;13 or Section&#160;15(d) of the Act.&#160;&#160;&#160;&#160;Yes&#160;&#160;&#9744;&#160;&#160;&#160;&#160;<ix:nonNumeric name="dei:EntityVoluntaryFilers" contextRef="P02_01_2022To01_31_2023">No</ix:nonNumeric>&#160;&#160;&#9746; </div></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Indicate by check mark whether the registrant (1)&#160;has filed all reports required to be filed by Section&#160;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)&#160;has been subject to such filing requirements for the past 90&#160;days.&#160;&#160;&#160;&#160;<ix:nonNumeric name="dei:EntityCurrentReportingStatus" contextRef="P02_01_2022To01_31_2023">Yes</ix:nonNumeric>&#160;&#160;&#9746;&#160;&#160;&#160;&#160;No&#160;&#160;&#9744; </div></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule&#160;405 of <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Regulation&#160;S-T</div> (&#167;&#160;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).&#160;&#160;&#160;&#160;<ix:nonNumeric name="dei:EntityInteractiveDataCurrent" contextRef="P02_01_2022To01_31_2023">Yes</ix:nonNumeric>&#160;&#160;&#9746;&#160;&#160;&#160;&#160;No&#160;&#160;&#9744; </div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-accelerated</div> filer, a smaller reporting company, or an emerging growth company. See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company,&#8221; and &#8220;emerging growth company&#8221; in Rule <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">12b-2</div> of the Exchange Act. </div></div><div style="font-size: 3pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 3pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 13%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 66%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 17%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 1%;"></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Large&#160;accelerated&#160;filer</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#9744;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntityFilerCategory" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:entityfilercategoryen">Accelerated filer</ix:nonNumeric></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#9746;</div></td></tr>
<tr style="font-size: 1pt;">
<td style="height: 3pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td>
<td colspan="2" style="height: 3pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td>
<td colspan="2" style="height: 3pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td>
<td colspan="2" style="height: 3pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Non-accelerated filer</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Smaller&#160;reporting&#160;company</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntitySmallBusiness" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:boolballotbox">&#9746;</ix:nonNumeric></div></td></tr>
<tr style="font-size: 1pt;">
<td style="height: 3pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td>
<td colspan="2" style="height: 3pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td>
<td colspan="2" style="height: 3pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td>
<td colspan="2" style="height: 3pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Emerging&#160;growth&#160;company</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntityEmergingGrowthCompany" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></div></td></tr></table><div style="clear:both;max-height:0pt;;text-indent: 0px;"></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">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&#160;13(a) of the Exchange Act.&#160;&#160;&#9744; </div></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Indicate by check mark whether the registrant has filed a report on and attestation to its management&#8217;s assessment of the effectiveness of its internal control over financial reporting under Section&#160;404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report.&#160;&#160;<ix:nonNumeric name="dei:IcfrAuditorAttestationFlag" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:boolballotbox">&#9746;</ix:nonNumeric> </div></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">If securities are registered pursuant to Section&#160;12(b) of the Act, indicate by check mark whether the financial statements of the registrant included in the filing reflect the correction of an error to previously issued financial statements.&#160;&#160;&#9744; </div></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Indicate by check mark whether any of those error corrections are restatements that required a recovery analysis of incentive-based compensation received by any of the registrant&#8217;s executive officers during the relevant recovery period pursuant to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">&#167;240.10D-1(b).&#160;&#160;&#9744;</div> </div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Indicate by check mark whether the registrant is a shell company (as defined in Rule <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">12b-2</div> of the Act).&#160;&#160;&#160;&#160;&#9744;&#160;&#160;Yes&#160;&#160;&#160;&#160;<ix:nonNumeric name="dei:EntityShellCompany" contextRef="P02_01_2022To01_31_2023" format="ixt:fixed-false">&#9746;</ix:nonNumeric>&#160;&#160;No </div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">The aggregate market value of the registrant&#8217;s voting common equity held by <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-affiliates</div> at July&#160;30, 2022, was approximately $<ix:nonFraction name="dei:EntityPublicFloat" contextRef="PAsOn07_30_2022" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">84,333,000</ix:nonFraction> based on the closing price on the Nasdaq Global Market on that date. The registrant has no <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-voting</div> common shares. </div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">As of April&#160;12, 2023, there were <ix:nonFraction name="dei:EntityCommonStockSharesOutstanding" contextRef="PAsOn04_12_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">7,400,560</ix:nonFraction><div style="display:inline;">&#160;</div>shares of Common Stock (par value $0.05 per share) of the registrant outstanding. </div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">DOCUMENTS INCORPORATED BY REFERENCE </div></div></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 8pt; margin-top: 3pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Portions of the Company&#8217;s definitive Proxy Statement for the 2023 Annual Meeting of Shareholders are incorporated by reference into Part III of this Annual Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K</div> where indicated. </div></div><div style="font-size: 3pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 3pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 19%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 18%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 18%;"></td>
<td style="vertical-align: bottom;"></td>
<td style="width: 15%;"></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td style="width: 17%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 7%;"></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Auditor&#160;Firm&#160;Id:</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: top; white-space: nowrap;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">PCAOB&#160;ID&#160;No.&#160;<ix:nonNumeric name="dei:AuditorFirmId" contextRef="P02_01_2022To01_31_2023">392</ix:nonNumeric></div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: top; white-space: nowrap;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Auditor&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div><div style="letter-spacing: 0px; top: 0px;;display:inline;">Name:</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: top; white-space: nowrap;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:AuditorName" contextRef="P02_01_2022To01_31_2023">Wolf &amp; Company, P.C.</ix:nonNumeric></div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: top; white-space: nowrap;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Auditor&#160;Location:</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: top; white-space: nowrap;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:AuditorLocation" contextRef="P02_01_2022To01_31_2023">Boston, MA</ix:nonNumeric></div></td></tr></table><div style="clear:both;max-height:0pt;;text-indent: 0px;"></div><div style="font-size: 4pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 4pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="line-height: 1pt; margin-top: 0pt; margin-bottom: 0pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="line-height: 3pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div></div></div>


<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold;text-align:center">ASTRONOVA, INC. </p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold;text-align:center">FORM <span style="white-space:nowrap">10-K</span> </p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold;text-align:center">TABLE OF CONTENTS </p> <p style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table cellspacing="0" cellpadding="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">


<tr>

<td style="width:8%"></td>

<td style="vertical-align:bottom;width:2%"></td>
<td style="width:86%"></td>

<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Page</span></td>
<td style="vertical-align:bottom">&#160;</td></tr>


<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">PART I</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td>
<td style="height:6pt" colspan="4"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;1.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_1">Business</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">1</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;1A.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_2">Risk Factors</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">8</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;1B.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_3">Unresolved Staff Comments</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">22</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;2.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_4">Properties</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">22</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;3.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_5">Legal Proceedings</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">23</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;4.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_6">Mine Safety Disclosures</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">23</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td>
<td style="height:6pt" colspan="4"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">PART II</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td>
<td style="height:6pt" colspan="4"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;5.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_7">Market for the Registrant&#8217;s Common Stock, Related Stockholder Matters and Issuer Purchases of Equity Securities</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">24</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;6.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_8">Reserved</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">24</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;7.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_9">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">24</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;7A.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_10">Quantitative and Qualitative Disclosures About Market Risk</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">37</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;8.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_11">Financial Statements and Supplementary Data</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">38</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;9.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_12">Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">38</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;9A.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_13">Controls and Procedures</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">38</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;9B.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_14">Other Information</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">39</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;9C.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_15">Disclosure Regarding Foreign Jurisdictions that Prevent Inspections</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">39</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td>
<td style="height:6pt" colspan="4"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">PART&#160;III</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td>
<td style="height:6pt" colspan="4"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;10.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_16">Directors, Executive Officers and Corporate Governance</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">40</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;11.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_17">Executive Compensation</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">40</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;12.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_18">Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">40</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;13.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_19">Certain Relationships, Related Transactions and Director Independence</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">40</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;14.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_20">Principal Accountant Fees and Services</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">40</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td>
<td style="height:6pt" colspan="4"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">PART&#160;IV</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td>
<td style="height:6pt" colspan="4"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;15.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_21">Exhibits and Financial Statement Schedule</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">41</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Item&#160;16.</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#toc415415_22">Form <span style="white-space:nowrap">10-K</span> Summary</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">41</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
</table>
</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold;text-align:center">ASTRONOVA, INC. </p> <p style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Forward-Looking Statements </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The information included in this Annual Report on <span style="white-space:nowrap">Form&#160;10-K</span> may contain forward-looking statements within the meaning of the Private Securities Litigation Reform Act of 1995. Forward-looking statements are not statements of historical fact, but rather reflect our current expectations concerning future events and results. We generally use the words &#8220;believes,&#8221; &#8220;expects,&#8221; &#8220;intends,&#8221; &#8220;plans,&#8221; &#8220;anticipates,&#8221; &#8220;likely,&#8221; &#8220;continues,&#8221; &#8220;may,&#8221; &#8220;will,&#8221; and similar expressions to identify forward-looking statements. Such forward-looking statements, including those concerning our expectations, involve risks, uncertainties and other factors, some of which are beyond our control, which may cause our actual results, performance or achievements to be materially different from those expressed or implied by such forward-looking statements. These risks, uncertainties and factors include, but are not limited to, those factors set forth in this Annual Report on <span style="white-space:nowrap">Form&#160;10-K</span> under &#8220;Item&#160;1A. Risk Factors.&#8221; We undertake no obligation to publicly update or revise any forward-looking statements, whether as a result of new information, future events or otherwise. The reader is cautioned not to unduly rely on such forward-looking statements when evaluating the information presented in this Annual Report on <span style="white-space:nowrap">Form&#160;10-K.</span> </p> <p style="margin-top:24pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold;text-align:center">PART I </p> <p style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_1"><span style="font-weight:bold">Item&#160;1</span><span style="font-weight:bold"><span style="font-style:italic">. Business </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold;text-align:center">General </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Unless otherwise indicated, references to &#8220;AstroNova,&#8221; the &#8220;Company,&#8221; &#8220;we,&#8221; &#8220;our,&#8221; and &#8220;us&#8221; in this Annual Report on Form <span style="white-space:nowrap">10-K</span> refer to AstroNova, Inc. and its consolidated subsidiaries. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We design, develop, manufacture and distribute a broad range of specialty printers and data acquisition and analysis systems, including both hardware and software, which incorporate advanced technologies to acquire, store, analyze, and present data in multiple formats. Target markets for our hardware and software products include aerospace, apparel, automotive, avionics, chemicals, computer peripherals, communications, distribution, food and beverage, general manufacturing, packaging and transportation. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our products are distributed worldwide through our own sales force, authorized dealers, and independent dealers and representatives. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our business consists of two segments, Product Identification (&#8220;PI&#8221;) and Test&#160;&amp; Measurement (&#8220;T&amp;M&#8221;). The PI segment includes specialty printing systems and related supplies sold under the QuickLabel<sup style="font-size:75%; vertical-align:top">&#174;</sup>, TrojanLabel<sup style="font-size:75%; vertical-align:top">&#174;</sup> and GetLabels<sup style="font-size:75%; vertical-align:top">&#8482;</sup> brand names. The T&amp;M segment includes our line of aerospace printers, ethernet networking products and test and measurement data acquisition systems sold under the AstroNova <sup style="font-size:75%; vertical-align:top">&#174;</sup> brand name. Refer to Note&#160;18, &#8220;Nature of Operations, Segment Reporting and Geographical Information,&#8221; in our audited consolidated financial statements elsewhere in this report for financial information regarding our segments. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On August 4, 2022, we acquired Astro Machine LLC (&#8220;Astro Machine&#8221;), an Illinois-based manufacturer of printing equipment, including label printers and related accessories, tabbers, conveyors, and envelope feeders. Astro Machine is reported as a part of our PI segment beginning with the third quarter of fiscal 2023. Refer to Note 2, &#8220;Acquisition,&#8221; in our audited consolidated financial statements included elsewhere in this report. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The following description of our business should be read in conjunction with &#8220;Management&#8217;s Discussion and Analysis of Financial Conditions and Results of Operations&#8221; on pages&#160;24 through&#160;37 of this Annual Report on <span style="white-space:nowrap">Form&#160;10-K.</span> </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">1 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold;text-align:center">Description of Business </p> <p style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Product Overview </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We leverage our expertise in data visualization technologies to design, manufacture and market specialty printing systems, test and measurement systems, and related services for select growing markets globally. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">PI products sold under the QuickLabel, TrojanLabel and GetLabels brands are used in brand owner and commercial applications to provide product packaging, marketing, tracking, branding, and labeling solutions to a wide array of industries. The PI segment offers a variety of digital color label tabletop printers and light commercial label printers, <span style="white-space:nowrap"><span style="white-space:nowrap">direct-to-package</span></span> printers, high-volume presses, and specialty original equipment manufacturer (&#8220;OEM&#8221;) printing systems, as well as a wide range of label, tag and flexible packaging material substrates and other supplies, including ink and toner, allowing customers to mark, track, protect and enhance the appearance of their products. PI products sold under the Astro Machine brand acquired on August&#160;4, 2022, also include a variety of label printers, envelope and packaging printing, and related processing and handling equipment. In the T&amp;M segment, we have a long history of using our technologies to provide networking systems and high-resolution flight deck and cabin printers for the aerospace market. In addition, the T&amp;M segment includes data acquisition recorders, sold under the AstroNova brand, to enable our customers to acquire and record visual and electronic signal data from local and networked data streams and sensors. The recorded data is processed, analyzed, stored and presented in various visual output formats. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Product Identification </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our PI segment includes three brands: QuickLabel, TrojanLabel, and GetLabels. Additionally, PI includes the recently acquired Astro Machine brand that is sold directly to end users though our channel partners and to OEM customers, who generally rebrand these products for sales to their customers. The segment provides a wide array of digital <span style="white-space:nowrap"><span style="white-space:nowrap">end-to-end</span></span> product marking and identification solutions including hardware, software, and supplies for OEMs, commercial printers, and brand owners. Our customers typically label or mark products on a short- to <span style="white-space:nowrap">mid-size</span> run basis and benefit from the efficiency, flexibility, and cost-savings of digitally printing labels or packaging in their facility, <span style="white-space:nowrap">on-demand,</span> with the ability to accommodate multiple SKUs or variable data such as bar codes, lot numbers or expiration dates. QuickLabel brand products include tabletop printers, production-ready digital color label printers, and specialty OEM printing systems for either standalone output or inline integration with existing <span style="white-space:nowrap">pre-processing</span> and finishing systems. Customers use our digital printing products in a wide variety of industries, including chemicals, cosmetics, food and beverage, medical products, nutraceuticals, pharmaceuticals, and many others. TrojanLabel expands our customer market by providing a range of higher volume digital color printers, OEM printing systems, and supplies that target the more demanding needs of brand owners, commercial printers, label converters, and packaging manufacturers, giving them the ability to digitally mark or encode products directly or to produce labels for post-printing applications. GetLabels brand products include a full line of media supplies, including label materials, tags, inks, toners, and thermal transfer ribbons designed for optimal performance with our printing hardware, and are also compatible with a wide variety of competitive and third-party printing hardware. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Current QuickLabel models include a selection of professional tabletop digital color label printers. We recently introduced the <span style="white-space:nowrap">QL-E100,</span> an entry-level, compact, full-color tabletop label printer. It delivers professional-quality output at a lower price point, which we believe is ideal for targeting smaller businesses entering the <span style="white-space:nowrap">on-demand</span> label market, and larger enterprises that require multiple <span style="white-space:nowrap">on-demand</span> label printers at distributed locations throughout their facilities. The high-speed <span style="white-space:nowrap">QL-120X</span> was built on our pioneering and successful Kiaro! platform. To expand the product line further, the <span style="white-space:nowrap">QL-120Xe,</span> a sister product to the dye ink <span style="white-space:nowrap">QL-120X,</span> was introduced in 2021 as a lower price point option for <span style="white-space:nowrap">low-volume</span> applications and price-sensitive customers. In 2020, we introduced the <span style="white-space:nowrap">QL-120D,</span> which features high-performance pigment inks that can produce durable BS5609-certified labels and labels that can withstand a wide range of demanding environmental conditions from sterilization to cryogenic freezing. Introduced early in 2019, the high-performance <span style="white-space:nowrap">QL-300</span> was the first <span style="white-space:nowrap">5-color</span> toner-based electrophotographic tabletop production label printer in the market. In addition, our </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">2 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
QuickLabel line of printers includes the <span style="white-space:nowrap">QL-850,</span> our next-generation wide-format inkjet color label printer, the <span style="white-space:nowrap">QL-30</span> and <span style="white-space:nowrap">QL-60</span> series, a family of <span style="white-space:nowrap">high-end</span> monochrome printers, and the <span style="white-space:nowrap">QLS-4100</span> XE, a unique solution with the ability to digitally print full-color labels and tags using thermal transfer ribbon technology. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our TrojanLabel portfolio includes a range of products from professional digital color label mini-presses to large-scale <span style="white-space:nowrap"><span style="white-space:nowrap">all-in-one</span></span> inline specialty printing systems for both brand owners, OEMs, and commercial printers. The <span style="white-space:nowrap">T2-C,</span> a compact, digital mini-press designed for 24/7 label production, includes numerous differentiating features for several <span style="white-space:nowrap">end-use</span> market applications. The <span style="white-space:nowrap">T2-L</span> is a narrow-format digital press designed specifically for flexible packaging substrates. Beyond label printing, the <span style="white-space:nowrap">T3-OPX,</span> the first of its kind <span style="white-space:nowrap"><span style="white-space:nowrap">direct-to-package</span></span> printer, which was introduced in late 2020, allows printing directly onto a range of flat products, including cardboard, paper bags, flat wood planks and many other items using pigment inks that are resistant to both water and UV exposure. A professional high-volume label press and finishing system, the T4, enables print, <span style="white-space:nowrap">die-cut,</span> and lamination in an <span style="white-space:nowrap"><span style="white-space:nowrap">all-in-one</span></span> machine with a much smaller footprint than others in the market. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">GetLabels provides a broad range of high-quality supplies for both our printers and third-party printers, including label and tag materials, inks, toner, and thermal transfer material, all specifically designed and constructed for a wide variety of labeling applications. Label material and substrates are carefully qualified and tested <span style="white-space:nowrap">on-site</span> in our Rhode Island Materials Research Laboratory to ensure durability and compatibility with our QuickLabel and TrojanLabel branded products, along with a variety of third-party printers. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Astro Machine sells a variety of label printers, envelope and package printers and related envelope tabbers, conveyors and feeders to OEM customers who <span style="white-space:nowrap">re-label</span> the products with their own brand. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The PI segment provides worldwide training and support as well as develops and licenses various specialized software programs to design and manage labels, print images, manage and operate our printers and presses, and coordinate printing on an automated basis directly over networked systems. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Test&#160;&amp; Measurement </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Products sold under our T&amp;M segment are designed and manufactured for airborne printing and networking solutions and data acquisition. Our aerospace products include flight deck printing solutions, networking hardware and specialized aerospace-grade thermal paper. Our data acquisition systems are used in research and development, flight testing, missile/rocket telemetry production monitoring, power and maintenance applications. These products are sold to customers in various industries, including aerospace&#160;&amp; defense, automotive, commercial airline, energy, manufacturing and transportation, to meet their need to acquire and record data from local and networked data streams and sensors. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our airborne printers, which include our flagship ToughWriter<sup style="font-size:75%; vertical-align:top">&#174;</sup> series, are used in the flight decks and cabins of military, commercial, and business aircraft to print hard copies of data to enhance flight safety and reduce pilot workload by providing ready access to many types of critical flight-specific information required for the safe and efficient operation of aircraft. Examples of printed data include navigation maps, arrival and departure information, flight itineraries, weather maps, notice to air missions or NOTAMS, performance data, passenger data, and air traffic control data. ToughSwitch<sup style="font-size:75%; vertical-align:top">&#174;</sup> Ethernet switches are used primarily in military aircraft and military vehicles to connect multiple computers or Ethernet devices. The airborne printers and Ethernet switches are ruggedized to comply with rigorous military and commercial flight-worthiness standards for operation under extreme environmental conditions. We are currently furnishing ToughWriter printers for various aircraft made by Airbus, Boeing, Bombardier, Lockheed, Gulfstream, and others. In addition to the ToughWriter products, we furnish other acquired flight deck printer products, including the TP/NP series, the RTP80 series and the <span style="white-space:nowrap">PTA-45B</span> series of airborne printers. The <span style="white-space:nowrap">PTA-45B</span> is subject to the Asset Purchase and License Agreement with Honeywell International, Inc. (the &#8220;Honeywell Agreement&#8221;), pursuant to which in 2017 we acquired an exclusive perpetual worldwide license to manufacture and support Honeywell&#8217;s narrow-format flight deck printers for the Boeing 737 and Airbus 320 aircraft. Over time we expect customers to replace the </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">3 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
<span style="white-space:nowrap">PTA-45B</span> and other acquired printer product lines with the AstroNova designed ToughWriter products because of the numerous technical features, functional advantages and significant weight savings. Currently, approximately <span style="white-space:nowrap">one-third</span> of the airborne printers sold are ToughWriter branded, and we expect the percentage of ToughWriter products to continue to grow over the next several years, and notably in fiscal 2025. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Other T&amp;M products include the TMX<sup style="font-size:75%; vertical-align:top">&#174;</sup> <span style="white-space:nowrap"><span style="white-space:nowrap">all-in-one</span></span> high-speed data acquisition system for applications requiring high channel counts and acquisition rates; the Daxus<sup style="font-size:75%; vertical-align:top">&#174;</sup><span style="white-space:nowrap">&#160;DXS-100</span> distributed data acquisition platform; the SmartCorder<sup style="font-size:75%; vertical-align:top">&#174;</sup> <span style="white-space:nowrap">DDX-100,</span> a portable <span style="white-space:nowrap"><span style="white-space:nowrap">all-in-one</span></span> data acquisition system for R&amp;D facility and field testing; and the Everest<sup style="font-size:75%; vertical-align:top">&#174;</sup> <span style="white-space:nowrap">EV-5000</span> digital strip chart recording system used mainly in aerospace and defense applications. The Daxus <span style="white-space:nowrap">DXS-100</span> can be connected to the SmartCorder to increase channel count or networked as part of a distributed measurement system spanning vast distances. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Technology </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our core technologies are data visualization technologies that relate to (1)&#160;acquiring data, (2)&#160;conditioning the data, (3)&#160;displaying or printing the data on hard copy, visual displays or electronic storage media, and (4)&#160;analyzing the data. To support our data visualization technology, we maintain technological core competencies and trade secret <span style="white-space:nowrap">know-how</span> concerning the subject matter peculiar to each business unit. The technological disciplines are diverse and include electronic, software, mechanical and industrial engineering aspects. Additionally, we possess engineering expertise in digital signal processing, image processing, fluidics, color theory, high-speed material handling, and airworthiness design. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Patents and Copyrights </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We hold several product patents in the United States and in foreign countries. We rely on a combination of copyright, patent, trademark, and trade secret laws in the United States and other jurisdictions to protect our technology and brand names. We consider our intellectual property to be critical to the operation of our business. In particular, we believe that the loss of the trademarks QuickLabel, TrojanLabel, ToughWriter, or ToughSwitch or the loss of the license provided under the Honeywell Agreement could have a material adverse impact on our business taken as a whole. Because of the OEM nature of the Astro Machine business model (and the similarity of that brand name to the AstroNova name), its trademark and brand name, while important, are less critical. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Manufacturing and Supplies </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We manufacture many of the products that we design and sell. Raw materials and supplies are typically available from a wide variety of sources. We manufacture many <span style="white-space:nowrap">sub-assemblies</span> and parts <span style="white-space:nowrap">in-house,</span> including certain specialty printed circuit board assemblies and harnesses, and we have extensive electronic and mechanical final assembly and test operations. Many parts are not manufactured <span style="white-space:nowrap">in-house</span> are standard electronic items available from multiple sources. Other printers and parts are designed or modified by us and manufactured by outside vendors according to our specifications. We also purchase certain components, assembled products, and supplies used to manufacture or sell with our products, from <span style="white-space:nowrap">single-or</span> limited- source suppliers. Although we believe the majority of these sole or limited source components, assembled products, and supplies could be sourced elsewhere with appropriate changes in the design of our products, the required design changes might not be feasible on a timely basis, and any interruption in these components, products or supplies could adversely affect our business. When circumstances cause us to anticipate that we may not be able to acquire such components, products or supplies on a timely basis, our practice is to procure a sufficient quantity in advance. In the past, we have made such advanced purchases primarily for aerospace products and in quantities that we anticipate will suffice for the life of the aircraft program for which those printers are designed. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Marketing and Competition </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We compete worldwide in multiple markets. Through our existing network of manufacturing, sales and support facilities, we have sold our products to customers in over 150 countries. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">4 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We believe we are a market leader in tabletop digital color label printing technology in the specialty <span style="white-space:nowrap">on-demand</span> printing field, the market leader in flight deck printers, and an innovator in digital color mini-press systems. In the data acquisition area, we are one of the leaders in general-purpose, portable, high-speed data acquisition systems. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Management believes that we have a market leadership position in many of the markets we serve. We retain our leadership position by virtue of our proprietary technology, product reputation, delivery, our channels to market, technical assistance and service to customers. The number of competitors varies by product line. Key competitive factors vary among our product lines but include technology, quality, service and support, distribution network and breadth of product and service offerings. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our PI products are sold by direct field salespersons as well as independent dealers and representatives, while our T&#160;&amp; M products are sold predominantly through direct sales and manufacturers&#8217; representatives. In the United States, we have factory-trained direct-field salespeople located throughout the country specializing in PI products. We also have direct field sales or service centers in Canada, China, Denmark, France, Germany, Malaysia, Mexico, Singapore, and the United Kingdom staffed by our own employees and dedicated third-party contractors. Additionally, we utilize over 100&#160;independent dealers and representatives selling and marketing our products in over 60&#160;countries. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">No single customer accounted for 10% or more of our net revenue in any of the last three fiscal years. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Order Backlog </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our order backlog is predominantly but not exclusively for products that will be delivered within twelve months, and backlog scheduled for beyond twelve months is predominantly within the T&amp;M segment. However, backlog varies regularly and is not a highly reliable predictive indicator of near-term future sales trends, primarily due to the frequent longer-term original equipment and supplies orders within the T&amp;M segment. In the PI segment, we have multi-period (but typically not multi-year) blanket order arrangements with many customers for labels and other supplies. Printer hardware in the PI segment is typically shipped within a short period of time after orders are booked. Manufacturing production is designed to meet forecasted demands and <span style="white-space:nowrap"><span style="white-space:nowrap">built-to-order</span></span> customer requirements. Backlog at January&#160;31, 2023 and 2022 was $35.8&#160;million and $27.8&#160;million, respectively. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Government Regulation </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We are subject to a wide variety of laws, rules, mandates, and regulations, some of which apply or may apply to us as a result of our business, particularly with respect to our aircraft cockpit printer business which sells in a highly regulated industry. For example, material modifications to an airborne printer cannot be made without having progressed through an extensive series of product qualification and certification steps that are technically complicated, expensive to execute, typically slow the pace of product development in that industry and can constrain our ability to quickly respond to pricing fluctuations or disruptions to our supply chain for products. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Other applicable and potentially applicable regulations and laws include regulations and laws regarding taxation, accounting and U.S. Securities and Exchange Commission (&#8220;SEC&#8221;) reporting, privacy, data protection, pricing, content, distribution, energy consumption, environmental regulation, competition, consumer protection, employment, import and export matters, information reporting requirements, access to our services and facilities, the design and operation of websites, health, safety, and sanitation standards, the characteristics and quality of products and services, product labeling and unfair and deceptive trade practices. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our business outside of the U.S. exposes us to foreign and additional U.S. laws and regulations, including but not limited to, laws and regulations relating to taxation, business licensing or certification requirements, consumer protection, intellectual property rights, consumer and data protection, privacy, encryption, restrictions on pricing or discounts, and the U.S. Foreign Corrupt Practices Act and other applicable U.S. and foreign laws prohibiting corrupt payments to government officials and other third parties. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">5 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Environmental Matters </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We believe that we are in compliance with all applicable federal, state, and local laws concerning the discharge of material into the environment or otherwise relating to the protection of the environment. We have not experienced any material costs in connection with environmental compliance and do not believe that such compliance will have any material effect on our financial position, results of operations, cash flows, or competitive position. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Employees </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">As of January&#160;31, 2023 we employed 394 full-time employees, including 40 employees added as a result of the Astro Machine acquisition in August 2022. Of our full-time employees, 295 were in the United States, 77 in Europe, 10 in Canada, 10 in Asia and two in Mexico. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">None of our employees are represented by a labor union or covered by a collective bargaining agreement; except for our employees in France, where local regulations generally require collective bargaining agreements. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Successful execution of our business strategy depends on our ability to retain several key employees in both individual contributor and management roles. We continuously assess the risk of losing our key employees through regular communications, engagement surveys and assessments in the labor market. Our retention strategy is focused on ensuring competitive compensation packages, career and professional development, leadership coaching and other actions to improve overall engagement with our key employees. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Culture </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We are deeply committed to and invest substantial resources in maintaining and improving a strong and definable company culture that shapes how we operate and engage with stakeholders and employees. Our culture consists of four key components: </p> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">A powerful set of core values: Customer First, One Global Team, Innovation, Continuous Improvement and Building Shareholder Value. </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">The AstroNova Operating System (AOS), the comprehensive business management process which helps us manage the business to achieve continuous improvements in quality, delivery, cost, and growth. </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">A commitment to operating with integrity and compliance to&#160;ensure our business is conducted in an honest, legal, and environmentally responsible manner. </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">A passionate commitment to quality that drives our goal to achieve zero defects and understand our customers&#8217; changing needs and expectations. </p></td></tr></table> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our objective is for these core values to guide our employees&#8217; behavior and direct how we conduct our business. These core values are reinforced during new hire orientation, ongoing engagement surveys, leadership development, and team development activities and are also demonstrated through teamwork, leadership, and everyday interactions. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Diversity and Inclusion </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We believe that our culture and core values are strengthened through diversity and inclusion. Our diversity initiatives include&#8212;but are not limited to&#8212;our practices and policies on recruitment and selection; compensation and benefits; professional development and training; promotions; transfers; social and recreational programs; layoffs; terminations; and the ongoing development of a work environment built on the premise of gender and diversity equity. These initiatives include targeted recruitment of women in technical, engineering and sales </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">6 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
roles, leadership development programs for women, periodic evaluation of our workforce demographics as compared to the demographics in the workforce market, and an affirmative effort to attract, recruit, retain and train a diverse workforce that is representative of the populations in the regions in which we do business. Metrics that track performance against these goals are regularly reported to and monitored by the Compensation Committee of our Board of Directors. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Other Information </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our business is not seasonal in nature. However, our revenue is impacted by the variable size of certain individual customer revenue transactions, which can cause fluctuations in revenue from quarter to quarter and which may be inconsistent with the underlying business or general economic trends. For example, in our T&amp;M segment, government procurement and contracting practices can result in material fluctuations in our backlog and revenues. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Information about our Executive Officers </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The following sets forth certain information with respect to all executive officers of the Company. All officers serve at the pleasure of the Board of Directors. </p> <p style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table cellspacing="0" cellpadding="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">


<tr>

<td style="width:30%"></td>

<td style="vertical-align:bottom;width:1%"></td>
<td></td>

<td style="vertical-align:bottom;width:2%"></td>
<td style="width:61%"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">Name</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Age</span></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">Position</p></td></tr>


<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Gregory A. Woods</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap" align="center">64</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">President, Chief Executive Officer and Director</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">David S. Smith</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap" align="center">66</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Vice President, Chief Financial Officer and Treasurer</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Stephen M. Petrarca</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap" align="center">60</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Vice President&#8212;Operations</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Michael J. Natalizia</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top;white-space:nowrap" align="center">59</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Vice President Technology&#160;&amp; Strategic Alliances, Chief Technology Officer</p></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Tom Carll</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap" align="center">56</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Vice President and General Manager&#8212;Aerospace</td></tr>
</table> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Mr.&#160;Woods has served as Chief Executive Officer of the Company since February&#160;1, 2014. Mr.&#160;Woods joined the Company in September 2012 as Executive Vice President and Chief Operating Officer and was appointed President and Chief Operating Officer on August&#160;29, 2013. Prior to joining the Company, Mr.&#160;Woods served from January 2010 to August 2012 as Managing Director of Medfield Advisors, LLC, an advisory firm located in Medfield, Massachusetts focused on providing corporate development and strategy guidance to technology driven manufacturing firms. From 2008 to 2010, Mr.&#160;Woods served as President of Performance Motion Devices, a specialty semiconductor and electronics manufacturer located in Lincoln, Massachusetts. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Mr.&#160;Smith was appointed Vice President, Chief Financial Officer and Treasurer of the Company effective January&#160;22, 2018. Prior to joining the Company, Mr.&#160;Smith served as Managing Partner of S.C. Advisors LLC, a financial management consultancy firm from 2008 through January 2018. Mr.&#160;Smith has also held a variety of senior finance positions at semiconductor and manufacturing companies, including Senior Vice President and Chief Financial Officer of Standard Microsystems Corporation, a global semiconductor company, from 2005 to 2008 and Vice President, Finance and Chief Financial Officer of both Dover Corporation, a diversified global manufacturing company, from 2000 to 2002 and Crane Company, a diversified manufacturing company from 1994 to 2000. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Mr.&#160;Petrarca was appointed Vice President&#8212;Operations in 1998. He has previously held positions as General Manager of Manufacturing, Manager of Grass Operations and Manager of Grass Sales. He has been with the Company since 1980. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Mr.&#160;Natalizia was appointed Vice President and Chief Technology Officer of the Company on March&#160;9, 2012. Prior to this appointment, Mr.&#160;Natalizia held the position of Director of Product Development of the Company since 2005. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">7 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Mr.&#160;Carll joined the Company in 1989 and has held the position of Vice President and General Manager&#8212;Aerospace since 2011. Previously, Mr.&#160;Carll was Product Manager and National Sales Manager of the AstroNova Test&#160;&amp; Measurement product group and from its formation in 2004, the AstroNova Aerospace business group. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Code of Ethics </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We have adopted a Code of Conduct which applies to all of our directors, officers and employees of the Company, including our Chief Executive Officer (&#8220;CEO&#8221;), Chief Financial Officer (&#8220;CFO&#8221;) and principal accounting officer which meets the requirements of a &#8220;code of ethics&#8221; as defined in Item&#160;406 of Regulation <span style="white-space:nowrap">S-K.</span> A copy of the Code of Conduct will be provided to shareholders, without charge, upon request directed to Investor Relations or can be obtained on our website,<span style="font-style:italic"> (www.astronovainc.com)</span>, under the heading &#8220;Investors&#8212;Corporate Governance&#8212;Governance Documents.&#8221; We intend to disclose any amendment to, or waiver of, a provision of the Code of Conduct for the CEO, CFO, principal accounting officer, or persons performing similar functions by posting such information on our website. </p> <p style="margin-top:18pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman;font-weight:bold">Available Information </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We make available on our website (www.astronovainc.com) our Annual Report on Form <span style="white-space:nowrap">10-K,</span> Quarterly Reports on Form <span style="white-space:nowrap">10-Q,</span> Current Reports on Form <span style="white-space:nowrap">8-K</span> and, if applicable, amendments to those reports filed or furnished pursuant to Sections 13(a) or 15(d) of the Securities Exchange Act of 1934 as soon as reasonably practicable after we electronically file such material with, or furnish it to, the SEC. These filings are also accessible on the SEC&#8217;s website at http://www.sec.gov. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_2"><span style="font-weight:bold">Item&#160;1A.</span><span style="font-weight:bold"><span style="font-style:italic"> Risk Factors </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The following risk factors should be carefully considered in evaluating AstroNova, because such factors may have a significant impact on our business, operating results, liquidity and financial condition. As a result of the risk factors set forth below, actual results could differ materially from those projected in any forward-looking statements. Additional risks and uncertainties not presently known to us, or that we currently consider to be immaterial, may also impact our business operations. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold"><span style="font-style:italic">Business and Industry Risks: </span></p> <p style="margin-top:6pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">The structural impacts on the economy as a result of the <span style="white-space:nowrap">COVID-19</span> pandemic and its aftermath have adversely affected and will likely continue to adversely affect our revenues, results of operations and financial condition. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">All of our global operations were materially adversely affected by the worldwide <span style="white-space:nowrap">COVID-19</span> pandemic and the related supply-chain disruptions. The aftermath of the immediate severe impacts of <span style="white-space:nowrap">COVID-19</span> on our operations and financial performance, the changes in our customers&#8217; purchasing behavior, the post-pandemic impact of inflation from macroeconomic factors, and the continued and lingering structural impacts on our global supply chain, particularly with respect to the availability and costs of electronic components, have made planning for customer demand and manufacturing production more difficult. Also, it has led to a rise in the cost of a number of classes of acquired goods for both the T&amp;M and PI segments. We will continue to evaluate the impact of <span style="white-space:nowrap">COVID-19</span> and its aftermath effects on our business, results of operations and cash flows throughout fiscal 2024, including the potential impacts on various estimates and assumptions inherent in the preparation of our condensed consolidated financial statements. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Since the <span style="white-space:nowrap">COVID-19</span> pandemic began we have experienced difficulties in obtaining raw materials and components for our products. Some of the structural dislocations in the global economy that were triggered by the pandemic are prolonging these difficulties. Particularly with respect to certain electronic components for legacy products in our T&amp;M segment, availability has been curtailed and may not recover, and in certain cases we have had to accelerate product redesign efforts and quickly transition customers to products with more viable </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">8 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
long-term product configurations. We expect to incur substantial costs in doing so but we are unable to accurately estimate the financial impact due to the rapidly changing environment. We also have had to incur additional costs, such as higher shipping fees (i.e., air rather than ocean freight) and though these have abated to a degree, they have not returned to <span style="white-space:nowrap">pre-pandemic</span> levels. These factors negatively impacted our efficiency, delayed shipments in each of the fiscal quarters of 2023, and caused what we believe are product shortages. We are addressing these issues through long-range planning and procuring higher inventory levels for affected items to help mitigate potential shortages whenever practicable. For our T&amp;M segment, we are also monitoring and reacting to extended lead times on electronic components, and utilizing a variety of strategies, including blanket orders, vendor-bonded inventories, extended commitments to our supply base, and seeking alternative suppliers. Additionally, we have taken actions to increase regular contact with our essential vendors and increased our forecasting horizon for our products to help us better manage our supply chain. In some cases, we are working with our vendors to help them procure components. Similarly, in our PI segment, we are increasing our inventory levels to ensure the adequacy of the supplies we sell to customers who use our printers. Our strategies to counteract these supply chain dislocations have significantly increased the amount of inventory we maintain to support our product sales. We have also experienced several situations where component shortages and scarcity have required us to pay significantly higher costs to obtain those components, particularly electronic components and circuit board assemblies in the T&amp;M segment and inks and printer machine parts in the PI segment. We will continue to monitor our supply chain going forward and update our mitigation strategies as we determine appropriate. We are not able to predict how current supply chain difficulties will develop in the future, and if the steps we are taking are not effective, it could have a material adverse impact on our business and results of operations. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our PI business was impacted by the <span style="white-space:nowrap">COVID-19</span> pandemic as it limited our ability to meet with customers to demonstrate our products at trade shows and <span style="white-space:nowrap">on-site</span> in their facilities was curtailed. We partially countered this through a variety of virtual, <span style="white-space:nowrap">on-line</span> selling and digital marketing strategies, a number of which we continue to emphasize today. The degree to which post-pandemic selling practices will revert to those that were dominant previously, and the ultimate mix of customer engagement methods of <span style="white-space:nowrap"><span style="white-space:nowrap">face-to-face</span></span> selling versus digital selling methods remains uncertain. For example, throughout fiscal 2023 we have attended numerous trade shows, but demand generation through those selling methods have not fully recovered to <span style="white-space:nowrap">pre-pandemic</span> levels. We believe that digital marketing has become a more permanent element of our <span style="white-space:nowrap"><span style="white-space:nowrap">go-to-market</span></span> strategy. This has required us to shift resources to those technologies. Further, in the PI segment, the timely and reliable delivery of acceptable quality printer components from certain of our suppliers has declined post-pandemic, causing us to incur additional direct procurement costs, to carry higher inventories to assure adequate supplies to satisfy customers, to incur additional warranty and technical service costs to offset those impacts and to accelerate alternative technology development. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The aerospace industry, which we serve through our aerospace product line, was significantly disrupted by the <span style="white-space:nowrap">COVID-19</span> pandemic, both inside and outside of the United States because of the severe decline in the demand for air travel, demand for aircraft, and a general curtailment of aircraft production rates. This had a material adverse impact on our financial results. Now that air travel demand and aircraft production demand have substantially improved, the direct and secondary impacts of the demand decline have abated, but demand for our products has not yet fully recovered to <span style="white-space:nowrap">pre-pandemic</span> levels. Our current belief is that it may take two or more years before we reach full revenue recovery, and lingering impacts of the <span style="white-space:nowrap">COVID-19</span> pandemic on the economic structure of the airline industry, and general economic conditions could still become a negative factor for demand for aircraft, which could stall or reverse current favorable trends. If this were to happen individually or in combination, these factors would be difficult for us to respond to quickly, which could have a material adverse impact on our business operations and financial results. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">9 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Our operating results and financial condition could be harmed if the markets into which we sell our products decline or do not grow as anticipated. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Any decline in our customers&#8217; markets or their general economic conditions would likely result in a reduction in demand for our products. For example, the 2020 grounding, suspension and subsequent slow restart of production of the Boeing 737 MAX, coupled with the negative impact of the <span style="white-space:nowrap">COVID-19</span> pandemic on the demand for new aircraft and travel, reduced the demand for our airborne printers, as well as for the related repairs and supplies which has negatively affected our results of operations. While these effects have been abating, demand remains lower than it was <span style="white-space:nowrap">pre-pandemic,</span> and currently the outlook is uncertain. While demand for air travel has recently increased, the impact of another viral pandemic or other widespread health emergency could negatively impact this trend in the future. Also, we believe that the pandemic has negatively impacted our customers&#8217; financial capacity materially enough to alter their strategies and industry dynamics so as to make changes in their demand more volatile. These factors may in particular cause demand for aircraft to grow slowly or decline, which would reduce demand for our products, and in turn harm our results of operations, financial position and cash flows. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Our future revenue growth depends on our ability to develop and introduce new products and services on a timely basis and achieve market acceptance of these new products and services. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The markets for our products are characterized by evolving technologies which in turn effect our product introduction cycles. Our future success depends largely upon our ability to address the rapidly changing needs of our customers by developing and supplying high-quality, cost-effective products, product enhancements and services on a timely basis and by keeping pace with technological developments and emerging industry standards. The success of our new products will also depend on our ability to differentiate our offerings from our competitors&#8217; offerings, price our products competitively, anticipate our competitors&#8217; development of new products, and maintain high levels of product quality and reliability. We spend a significant amount of time and effort on the development of our airborne and color printer products as well as our data acquisition and recorder products. Failure to meet our customers&#8217; changing business needs or to further develop any of our new products and their related markets as anticipated could adversely affect our future revenue growth and operating results. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">As we introduce new or enhanced products, we must also successfully manage the transition from older products to minimize disruption in customers&#8217; ordering patterns, avoid excessive levels of older product inventories and provide sufficient supplies of new products to meet customer demands. The introduction of new or enhanced products may shorten the life cycle of our existing products, or replace sales of some of our current products, thereby offsetting the benefit of even a successful product introduction and may cause customers to defer purchasing existing products in anticipation of the new products. Additionally, when we introduce new or enhanced products, we face numerous risks relating to product transitions, including the inability to accurately forecast demand, manage excess and obsolete inventories, address new or higher product cost structures, and manage different sales and support requirements due to the type or complexity of the new products. Any customer uncertainty regarding the timeline for rolling out new products or our plans for future support of existing products may cause customers to delay purchase decisions or purchase competing products which would adversely affect our business and operating results. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold"><span style="font-style:italic">Operational and Business Strategy Risks: </span></p> <p style="margin-top:6pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">We are dependent upon contract manufacturers for some of our products. If these manufacturers do not meet our requirements, either in volume or quality, then we could be materially harmed. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We subcontract the manufacturing and assembly of certain of our products to independent third parties at facilities located in various countries. Relying on subcontractors involves a number of significant risks, including: </p> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Disruptions in the global supply chain; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Limited control over the manufacturing process; </p></td></tr></table>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">10 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">

<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Potential absence of adequate production capacity; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Potential delays in production lead times; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Unavailability of certain process technologies; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Reduced control over delivery schedules, manufacturing yields, quality and costs and </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Exposure to rapid unplanned cost increases that cannot be adequately recovered by customer price increases due to market competition or contractual constraints. </p></td></tr></table> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">If one of our significant subcontractors becomes unable or unwilling to continue to manufacture or provide these products in required volumes, fails to meet our quality standards, or imposes rapid price increases that we cannot recover in the market, we will have to identify alternate qualified subcontractors, take over the manufacturing ourselves, or redesign our products to use components from other suppliers. Additional qualified subcontractors may not be available or may not be available on a timely or cost-competitive basis. Any interruption in the supply, increase in the cost of the products manufactured by a third-party subcontractor or failure of a subcontractor to meet quality standards could have a material adverse effect on our business, operating results and financial condition. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">For certain components, assembled products and supplies, we are dependent upon single or limited source suppliers. If these suppliers do not meet demand, either in volume or quality, then we could be materially harmed. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Although we use standard parts and components for our products where possible, we purchase certain components, assembled products and supplies used in the manufacture of our products from a single source or limited supplier sources. If the supply of a key component, assembled products or certain supplies were to be delayed or curtailed or, in the event a key manufacturing or sole supplier delays shipment of such components or assembled products, our ability to ship products in desired quantities and in a timely manner would be adversely affected. For example, as a result of the global <span style="white-space:nowrap">COVID-19</span> pandemic, there was a disruption to our supply chain due to the delays of component shipments from our vendors in China and other jurisdictions in which normal business operations were disrupted. Our business, results of operations and financial position could also be adversely affected, depending on the time required to obtain sufficient quantities from the original source or, if possible, to identify and obtain sufficient quantities from an alternative source. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Additionally, if any single or limited source supplier becomes unable or unwilling to continue to supply components, assembled products or supplies in required volumes or at acceptable prices, we will have to identify and qualify acceptable replacements or redesign our products with different components. Alternative sources may not be available, or product redesign may not be feasible on a timely basis. For example, in fiscal 2023, we experienced increased difficulty in obtaining certain technology-based parts, components and supplies from the largest single supplier of our PI segment at stable or predictable prices. Additionally, we experienced repeated significant quality problems with that supplier. We have responded to these issues by increasing our inventories of those products to mitigate supply risk, negotiating quality related cost reimbursements, and in some cases, accelerating our development of PI products that rely on alternative suppliers. Any interruption in the supply of or increase in the cost of the components, assembled products and supplies provided by single or limited source suppliers could have a material adverse effect on our business, operating results, and financial condition. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">We face significant competition, and our failure to compete successfully could adversely affect our results of operations and financial condition. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We operate in an environment of significant competition, especially in the markets in which we sell our PI printers and T&amp;M data acquisition products. This competition is driven by rapid technological advances, evolving industry standards, frequent new product introductions and the demands of customers to become more efficient. Our competitors range from large international companies to relatively small firms. We compete based </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">11 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
on technology, performance, price, quality, reliability, brand, distribution and customer service and support. Our success in future performance is largely dependent upon our ability to compete successfully in the markets we currently serve and to expand into additional market segments. Additionally, current competitors or new market entrants may develop new products or services with features that could adversely affect the competitive position of our products. To remain competitive, we must develop new products, services and applications and periodically enhance our existing offerings. If we are unable to compete successfully, our customers could seek alternative solutions from our competitors and we could lose market share, which could materially and adversely affect our business, results of operations and financial position. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Our profitability is dependent upon our ability to obtain adequate pricing for our products and to control our cost structure</span><span style="font-weight:bold"><span style="font-style:italic">. </span></span><span style="font-style:italic"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our success depends on our ability to obtain adequate pricing for our products and services. For a variety of complex reasons, many of which were triggered by the <span style="white-space:nowrap">COVID-19</span> pandemic, the general economy has been significantly impacted by supply chain disruptions. Examples of some of these impacts on us include reduced availability of certain electronic components and the need to pay premium prices to obtain them, and noticeably higher costs for a wide array of other parts and raw material components in both of our product segments. This has been exacerbated by increases in the cost of transportation to expedite incoming components and supplies. In many cases, we have had to expedite delivery of critical materials through significantly higher cost airfreight methods. Our ability to offset these effects through pricing actions for our products and services may not prove sufficient to offset these or further cost increases. Attempts to increase prices may not hold in the face of customer resistance and/or competition. If we are unable to obtain adequate pricing for our products and services, our results of operations and financial position could be materially adversely affected. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We are also continually reviewing our operations with a view towards reducing our cost structure, including but not limited to reducing our labor <span style="white-space:nowrap"><span style="white-space:nowrap">cost-to-revenue</span></span> ratio, improving process and system efficiencies and outsourcing certain internal functions. From time to time, we also engage in restructuring actions to reduce our cost structure. However, if these efforts to constrain the cost of our operations are inadequate to offset higher product and employee wage costs, our results of operations and financial position could be materially adversely affected. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Our inability to adequately enforce and protect our intellectual property defend against assertions of infringement or the loss of certain licenses could prevent or restrict our ability to compete. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We rely on patents, trademarks, licenses, and proprietary knowledge and technology, both internally developed and acquired, in order to maintain a competitive advantage.&#160;Our competitors may develop technologies that are similar or superior to our proprietary technologies or design technologies around the intellectual property protections or licenses that we currently own. The loss of the trademarks QuickLabel, TrojanLabel, ToughWriter and ToughSwitch or the loss of the licenses provided under the Honeywell Agreement could have a material adverse impact on our business. Operating outside the United States also exposes us to additional intellectual property risk. The laws and enforcement practices of certain jurisdictions in which we operate do not protect our intellectual property rights to the same extent as in the United States. Any diminution in our ability to defend against the unauthorized use of these rights and assets could have an adverse effect on our results of operations and financial condition.&#160;Litigation may be necessary to protect our intellectual property rights or defend against claims of infringement, which could result in significant costs and divert our management&#8217;s focus away from operations. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">We have significant inventories on hand. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We maintain a significant amount of inventory, and as a result of recent supply chain disruptions and announced or anticipated price increases from suppliers, we have further increased the amount of inventory we maintain on hand to ensure we are able to meet market demand for our products at a reasonable price. These </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">12 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
increases have been concentrated in label printing machines and supplies sold by our PI business, as well as in electronic components and assemblies in our T&amp;M business. We maintain allowances for slow-moving and obsolete inventory that we believe are adequate, but any significant unanticipated changes in future product demand or market conditions, could have an impact on the value of inventory and adversely affect our business, operating results and financial condition. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">We could incur liabilities as a result of installed product failures due to design or manufacturing defects. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We have incurred and could in the future incur additional liabilities because of product failures due to design or manufacturing defects. Our products may have defects despite our internal testing or testing by customers. These defects could result in, among other things, a delay in recognition of sales, loss of sales, loss of market share, failure to achieve market acceptance or damage to our reputation. We could be subject to material claims by customers and may incur substantial expenses to correct any product defects. While in the past, we have successfully obtained partial compensation from suppliers for their contribution to product quality issues, we may not be successful in such a recovery in the future, and these recoveries have not in the past and are not in the future likely to fully offset the full financial impact on us. For example, in fiscal 2023, the quality of products obtained from one of the key suppliers to our PI segment declined and we were unable to detect latent defects in their products in a timely manner, which resulted in our incurring increased technical service and warranty expenses. We obtained partial compensation from that supplier, but this was insufficient to fully cover all of our costs related to this issue. We also believe we have experienced demand declines as a result of customers&#8217; perceptions of the quality defects related to this supplier. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In addition, through our acquisitions, we have assumed, and may in the future assume, liabilities related to products previously developed by an acquired company that may not have been subjected to adequate product development, testing and quality control processes, and may have unknown or undetected defects. Some types of defects may not be detected until the product is installed in a user environment. This may cause us to incur significant warranty, repair or <span style="white-space:nowrap">re-engineering</span> costs. As such, it could also divert the attention of engineering personnel from product development efforts, which may result in increased costs and lower profitability. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">We could experience a significant disruption in or security breach of our information technology system which could harm our business and adversely affect our results of operations. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We rely on <span style="white-space:nowrap">on-premise</span> and cloud-based information technology systems, some of which are managed by or licensed from third parties, to support many critical aspects of our business, as well as to process, transmit and store our own electronic proprietary or confidential information, and confidential information of customers, employees, suppliers and others, including personally identifiable information, credit card data, and other proprietary confidential information.&#160;These systems are vulnerable to damage, disruptions and/or shutdowns due to attacks by cyber-criminals, data breaches, employee error, power outages, computer viruses, telecommunication or utility failures, systems failures, natural disasters, catastrophic events or other unforeseen events. These vulnerabilities could interfere with our operations, compromise our data processing capacity and the security of our information and that of our customers and suppliers, and expose us to liability which could adversely impact our business and reputation. We actively manage these risks through a variety of hardware and software-based techniques that we own, license or otherwise procure from third parties under contract to safeguard our systems, and we own or procure from third parties system data storage redundancy and disaster recovery capability. In particular, we have increased our investment in tools, techniques and training that we believe will reduce our vulnerability to attacks from cyber-criminals. However, due to the complexity of our systems, and especially due to the ever-increasing sophistication of cyber-criminals, there is no assurance that our efforts will be sufficient to prevent cyber-attacks, security breaches, or the other potential exploitation of vulnerabilities or systems failures. In any such circumstance, our system redundancy and other disaster recovery planning may be ineffective or inadequate. While we have experienced, and expect to continue to experience, these types of threats to our information technology networks and infrastructure, none of them to date has had a material impact. However, in the future, such events could result in legal claims or proceedings, liability or </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">13 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
penalties under privacy laws, disruption in operations, and damage to our brand and reputation, all of which could adversely affect our business, operating results and financial condition. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We maintain insurance for a variety of cybersecurity risks to mitigate their possible impact, but because of the prevalence of claims in the market for cybersecurity insurance, the cost for that insurance has increased and the underwriting criteria to obtain such insurance has become far more demanding. There is no assurance that we will be able to obtain such insurance in the future, despite our substantial investments in cybersecurity, and if we are able to do so, it may be at substantially higher costs. In addition, in response to these higher costs, we may choose to reduce the amount of insurance we maintain because we believe our improvements in our cybersecurity profile have reduced our risk exposure relative to the increased cost of insurance. If our risk assessments prove incorrect and we were to have a loss not fully covered by insurance, our financial condition and results of operations could be materially negatively impacted. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">We depend on our key employees and other highly qualified personnel and our ability to attract and develop new, talented professionals. Our inability to attract and retain key employees, as well as challenges with respect to the management of human capital resources, could compromise our future success and our business could be harmed. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our future success depends upon our ability to attract and retain, through competitive compensation and benefits programs, professional and executive employees, including sales, operating, marketing, and financial management personnel as well as our ability to manage human capital resources. There is substantial competition for skilled personnel, and the failure to attract, develop, retain and motivate adequately qualified personnel could negatively impact our business, financial condition, results of operations and prospects. In order to hire new personnel or retain or replace our key personnel, we must maintain competitive compensation and benefits, and we may also be required to increase compensation, which would decrease net income. Additionally, several key employees have special knowledge of customers, supplier relationships, business processes, manufacturing operations, regulatory and customer quality compliance management, and financial management issues. The loss of any of these employees as the result of competitive compensation pressures or ineffective management of human capital resources could harm our ability to perform efficiently and effectively until their knowledge and skills are replaced, which might be difficult to do quickly, and as a result could have a material adverse effect on our business, financial condition, and results of operations. Failure to retain or attract key personnel could impede our ability to grow and could result in our inability to operate our business profitably. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Although we have not experienced any material disruptions due to labor shortages to date, we have observed an overall tightening and increasingly competitive&#160;labor&#160;market, and the demand for qualified individuals is expected to remain strong for the foreseeable future. Any sustained&#160;labor&#160;shortage&#160;or increased turnover rates within our&#160;employee&#160;base, could lead to increased costs and lost profitability and could otherwise compromise our ability to efficiently operate our business. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">We may record future impairment charges, which could materially adversely impact our results of operations. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We test our goodwill balances annually, or more frequently if indicators are present or changes in circumstances suggest that impairment may exist. We assess goodwill for impairment at the reporting unit level and monitor the key drivers of fair value to detect events or other changes that would warrant an interim impairment test of our goodwill and intangible assets. Declines in the future performance and cash flows of a reporting unit or asset group, changes in our reporting units or in the structure of our business as a result of future reorganizations, acquisitions or divestitures of assets or businesses, or changes in other key assumptions, may result in the recognition of significant asset impairment charges, which could have a material adverse impact on our results of operations. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We also review our long-lived assets including property, plant and equipment, and other intangibles assets for impairment when events or changes in circumstances indicate the carrying value may not be recoverable. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">14 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
Factors we consider include significant under-performance relative to expected historical or projected future operating results, significant negative industry or economic trends and our market capitalization relative to net book value. We may be required in the future to record a significant charge to earnings in our financial statements during the period in which any impairment of our long-lived assets is determined. Such charges could have a significant adverse impact on our results of operations and our financial condition. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold"><span style="font-style:italic">Financial and Economic Risks: </span></p> <p style="margin-top:6pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">We face risks related to recession, inflation, stagflation and other economic conditions</span><span style="font-weight:bold">.</span><span style="font-style:italic"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Customer demand for our products may be impacted by weak economic conditions, inflation, stagflation, recession, rising interest rates, equity market volatility or other negative economic factors in the U.S. or other nations. For example, under these conditions or the expectation of such conditions, our customers may cancel orders, delay purchasing decisions or reduce their use of our services. In addition, these economic conditions could result in higher inventory levels and the possibility of additional charges if we request changes in delivery schedules or if suppliers incur additional costs that they pass on to us. Further, in the event of a recession or threat of a recession, our suppliers, distributors, and other third-party partners may suffer their own financial and economic challenges and, as a result, they may demand pricing accommodations, delay payment, or become insolvent, which could harm our ability to meet our customers&#8217; demands or collect revenue or could otherwise harm our business. Similarly, disruptions in financial or credit markets may impact our ability to manage normal commercial relationships with our customers, suppliers and creditors and might cause us to not be able to continue to access preferred sources of liquidity when we would like if at all, and our borrowing costs could increase. Thus, if general macroeconomic conditions continue to deteriorate, our business and financial results could adversely affect our business, operating results and financial condition. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In addition, we are subject to risks from inflation and increasing market prices of certain components, supplies, and raw materials, which are incorporated into our end products or used by our suppliers to manufacture our end products. These components, supplies and other raw materials have from time to time become restricted. General market factors and conditions have in the past and may in the future affect pricing of such components, supplies and commodities. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Economic, political and other risks associated with international sales and operations could adversely affect our results of operations and financial position. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Because we sell our products worldwide, our business is subject to risks associated with doing business internationally. Revenue from international operations, which includes both direct and indirect sales to customers outside the U.S., accounted for approximately 35% of our total revenue for fiscal 2023, and we anticipate that international sales will continue to account for a significant portion of our revenue. In addition, we have employees, suppliers, contractors and facilities located outside the U.S. Accordingly, our business, operating results and financial condition could be harmed by a variety of factors, including: </p> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Interruption to transportation flows for delivery of parts to us and finished goods to our customers; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Customer and vendor financial stability; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Fluctuations in foreign currency exchange rates; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Changes in a specific country&#8217;s or region&#8217;s environment including political, economic, monetary, regulatory or other conditions; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Trade protection measures and import or export licensing requirements; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Negative consequences from changes in tax laws; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Difficulty in managing and overseeing operations that are distant and remote from corporate headquarters; </p></td></tr></table>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">15 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">

<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Difficulty in obtaining and maintaining adequate staffing; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Differing labor regulations; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Failure to comply with complex and rapidly changing government economic sanctions against other countries, especially arising from responses to armed conflict; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Unexpected changes in regulatory requirements; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Uncertainty surrounding the implementation and effects of the United Kingdom&#8217;s withdrawal from the EU, commonly known as &#8220;Brexit&#8221;; and </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Geopolitical turmoil, including terrorism, war and public health disruptions, such as that caused by the <span style="white-space:nowrap">COVID-19</span> pandemic or Russia&#8217;s invasion of Ukraine. </p></td></tr></table> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">To date, the impact of the Russian invasion of Ukraine and the resulting governmental sanctions and our decision to halt all activities in the affected areas has had an immaterial direct impact on our revenues. We believe, however, that the impact on the economies of Western Europe, especially Germany, which is the largest <span style="white-space:nowrap">non-North</span> American market for our products, has had a negative impact on demand for our products. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Changes in our tax rates or exposure to additional income tax liabilities or assessments could affect our profitability. In addition, audits by tax authorities could result in additional tax payments for prior periods</span><span style="font-weight:bold"><span style="font-style:italic">. </span></span><span style="font-style:italic"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">As a global company, we are subject to taxation in numerous countries, states and other jurisdictions. As a result, our effective tax rate is based on the tax rates in effect where we operate. In preparing our financial statements, we estimate the amount of tax that will become payable in each jurisdiction. Our effective tax rate may vary as a result of numerous factors, including changes in the mix of our profitability from jurisdiction to jurisdiction, the results of examinations and audits of our tax filings, whether we secure or sustain acceptable arrangements with tax authorities, adjustments to the value of our uncertain tax positions, changes in accounting for income taxes and changes in tax laws. Any of these factors could cause us to experience an effective tax rate significantly different from previous periods or our current expectations. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Changes to tax laws and regulations or changes to the interpretation thereof, the ambiguity of tax laws and regulations, the subjectivity of factual interpretations, uncertainties regarding the geographic mix of earnings in any particular period, and other factors, could have a material impact on our estimates of our effective tax rate and our deferred tax assets and liabilities. The impact of these factors may be substantially different <span style="white-space:nowrap"><span style="white-space:nowrap">from&#160;period-to-period.</span></span> In addition, the amount of income taxes we pay is subject to ongoing audits by U.S. federal, state and local tax authorities. If audits result in payments or assessments different from our reserves, our future results may include unfavorable adjustments to our tax liabilities and our financial statements could be adversely affected. Any further significant changes to the tax system in the United States or in other jurisdictions<span style="font-weight:bold"><span style="font-style:italic"> </span></span>(including changes in the taxation of international income as further described below) could adversely affect our financial statements. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">We may have exposure to additional tax liabilities, which could negatively impact our income tax expense, net income and cash flow. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We are subject to income and other taxes in both the U.S. and the foreign jurisdictions in which we operate. The determination of our worldwide provision for income taxes and current and deferred tax assets and liabilities requires judgment and estimation. In the ordinary course of our business, there are many transactions and calculations where the ultimate tax determination is uncertain. We are subject to regular review and audit by both domestic and foreign tax authorities and to the prospective and retrospective effects of changing tax regulations and legislation. Although we believe our tax estimates are reasonable, the ultimate tax outcome may materially differ from the amounts recorded in our consolidated financial statements and may materially affect our income tax benefit or expense, net loss or income, and cash flows in the period in which such determination is made. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">16 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Deferred tax assets are recognized for the expected future tax consequences of temporary differences between the carrying amount for financial reporting purposes and the tax bases of assets and liabilities, and for net operating losses and tax credit carry forwards. In some cases, we may record a valuation allowance to reduce our deferred tax assets to estimated realizable value. We review our deferred tax assets and valuation allowance requirements quarterly. If we are unable to demonstrate that it is more likely than not that we will not be able to generate sufficient future taxable income to realize the net carrying value of deferred tax assets, we will record a valuation allowance to reduce the deferred tax assets to estimated realizable value, which could result in a material income tax charge. As part of our review, we consider positive and negative evidence, including cumulative results of recent years. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">If we are unable to successfully comply with our credit agreement with Bank of America or secure alternative financing, our business and financial condition could be materially adversely affected. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our credit agreement with Bank of America requires us, among other things, to satisfy certain financial ratios on an ongoing basis, consisting of a maximum consolidated leverage ratio, a minimum consolidated fixed charge coverage ratio and an asset coverage ratio. We are also required to comply with other covenants and conditions, set forth in the credit agreement, including, among others, limitations on our and our subsidiaries&#8217; ability to incur future indebtedness, to place liens on assets, to pay dividends or distributions on their capital stock, to repurchase or acquire their capital stock, to conduct mergers or acquisitions, to sell assets, to alter their capital structure, to make investments and loans, to change the nature of their business, and to prepay subordinated indebtedness, in each case subject to certain exceptions and thresholds as set forth in the credit agreement. If we were to violate the terms of the credit agreement and we were unable to renegotiate its terms at that time or secure alternative financing, it could have a material adverse impact on us. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">The agreements governing our indebtedness subject us to various restrictions that limit our ability to pursue business opportunities. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The credit agreement governing our credit facility with Bank of America, N.A., as amended, contains, and any future debt agreements may include, several restrictive covenants that impose significant operating and financial restrictions on us and our subsidiaries. Such restrictive covenants may significantly limit our ability to: </p> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Incur future indebtedness; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Place liens on assets; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Pay dividends or distributions on our and our subsidiaries&#8217; capital stock; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Repurchase or acquire our capital stock; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Conduct mergers or acquisitions; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Sell assets; and/or </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Alter our or our subsidiaries&#8217; capital structure, to make investments and loans, to change the nature of their business, and to prepay subordinated indebtedness. </p></td></tr></table> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">We may not realize the anticipated benefits of past or future acquisitions, divestitures and strategic partnerships, and integration of acquired companies or divestiture of businesses may negatively impact our overall business. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We have made strategic investments in other companies, products and technologies, including our August 2022 acquisition of Astro Machine LLC and 2017 acquisition of TrojanLabel. We will continue to identify and pursue acquisitions of complementary companies and strategic assets, such as customer bases, products and technology. However, there can be no assurance that we will be able to identify suitable acquisition opportunities. In any acquisition that we complete, we cannot be certain that: </p> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">We will successfully integrate the operations of the acquired business with our own; </p></td></tr></table>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">17 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">

<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">All the benefits expected from such integration will be realized; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Management&#8217;s attention will not be diverted or divided, to the detriment of current operations; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Amortization of acquired intangible assets or possible impairment of acquired intangibles will not have a negative impact on operating results or other aspects of our business; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Delays or unexpected costs related to the acquisition will not have a detrimental impact on our business, operating results and financial condition; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Customer dissatisfaction with, or performance problems at, an acquired company will not have an adverse impact on our reputation; and </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Respective operations, management and personnel will be compatible. </p></td></tr></table> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">For example, in the recently acquired Astro Machine business, revenues are concentrated in a relatively small number of customers. Failure to satisfy the delivery requirements of those customers or to adequately respond to their evolving product requirements could cause us to lose one or more customers which would have a material adverse impact on our financial condition and results of operation due to lower revenue and could result in intangible asset impairment. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In certain instances, as permitted by applicable law and NASDAQ rules, acquisitions, such as the Astro Machine acquisition, may be consummated without seeking and obtaining shareholder approval, in which case shareholders will not have an opportunity to consider and vote upon the merits of such an acquisition. Although we will endeavor to evaluate the risks inherent in an acquisition, there can be no assurance that we will properly ascertain or assess such risks. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We may also divest certain businesses from time to time. Divestitures will likely involve risks, such as difficulty splitting up businesses, distracting employees, potential loss of revenue and negatively impacting margins, and potentially disrupting customer relationships. A successful divestiture depends on various factors, including our ability to: </p> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Effectively transfer assets, liabilities, contracts, facilities and employees to the purchaser; </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Identify and separate the intellectual property to be divested from the intellectual property that we wish to keep; and </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Reduce fixed costs previously associated with the divested assets or business. </p></td></tr></table> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">All of these efforts require varying levels of management resources, which may divert our attention from other business operations. Further, if market conditions or other factors lead us to change our strategic direction, we may not realize the expected value from such transactions. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">If we are not able to successfully integrate or divest businesses, products, technologies or personnel that we acquire or divest, or able to realize the expected benefits of our acquisitions, divestitures or strategic partnerships, our business, results of operations and financial condition could be adversely affected. </p> <p style="margin-top:18pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Changes in our business strategy or restructuring of our businesses may increase our costs or otherwise affect the profitability of our businesses. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We continually review our operations with a view toward reducing our cost structure, including but not limited to reducing our labor <span style="white-space:nowrap"><span style="white-space:nowrap">cost-to-revenue</span></span> ratio, improving process and system efficiencies and increasing our revenues and operating margins. As changes in our business environment occur, we may need to adjust our business strategies to meet these changes, or we may otherwise find it necessary to restructure our operations or particular businesses or assets. When these changes or events occur, we may incur costs to change our business strategy and may need to write down the value of assets or sell certain assets. In any of these events our costs may increase, and we may have significant charges or losses associated with the write-down or divestiture of assets. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">18 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Adverse conditions in the global banking industry and credit markets could impair our liquidity or interrupt our access to capital markets, borrowings or financial transactions to hedge certain risks. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">At the end of fiscal 2023, we had approximately $3.9&#160;million of cash and cash equivalents. Our cash and cash equivalents are held in bank demand deposit accounts and foreign bank accounts. Disruptions in the financial markets may, in some cases, result in an inability to access assets such as money market funds that traditionally have been viewed as highly liquid. Any failure of our counterparty financial institutions or funds in which we have invested may adversely impact our cash and cash equivalent positions and, in turn, our financial position. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">To date, we have been able to access financing that has allowed us to make investments in growth opportunities and fund working capital requirements as needed. In addition, we occasionally enter into financial transactions to hedge certain foreign exchange and interest rate risks. Our continued access to capital markets, the stability of our lenders and their willingness to support our needs, and the stability of the counterparties to our financial transactions that hedge risks are essential for us to meet our current and long-term obligations, fund operations, and fund our future strategic initiatives. An interruption in our access to external financing or financial transactions to hedge risk could materially and adversely affect our business and financial condition. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Inadequate self-insurance accruals or insurance coverage for employee healthcare benefits could have an adverse effect on our business, financial results or financial condition. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In the U.S., we maintain an employee health insurance coverage plan on a self-insured basis backed by stop-loss coverage which sets a limit on our liability for both individual and aggregate claim costs. We record expenses based on actual claims incurred and estimates of the costs of expected claims, administrative costs, and stop-loss insurance premiums. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We record a liability for our estimated cost of U.S. claims incurred and unpaid as of each balance sheet date. Our estimated liability is recorded on an undiscounted basis and is based on historical trends and data provided by our insurance broker. Our history of claims activity is closely monitored, and liabilities are adjusted as warranted based on changing circumstances. It is possible, however, that our actual liabilities may exceed our estimates of losses. We may also experience an unexpectedly large number of claims that result in costs or liabilities in excess of our projections, which could cause us to record additional expenses, which could adversely impact our business, financial condition, results of operations and cash flow. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold"><span style="font-style:italic">Legal and Regulatory Risks: </span></p> <p style="margin-top:6pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Certain of our products require certifications by customers, regulators or standards organizations, and our failure to obtain or maintain such certifications could negatively impact our business. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In certain industries and for certain products, such as those used in aircraft, we must obtain certifications for our products by customers, regulators or standards organizations. If we fail to obtain required certifications for our products, or if we fail to maintain such certifications on our products after they have been certified, our business, financial condition, results of operations and cash flows could be materially and adversely affected. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">We are subject to laws and regulations; failure to address or comply with these laws and regulations could harm our business and adversely affect our results of operations. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our operations are subject to laws, rules, regulations, including environmental regulations, government policies and other requirements in each of the jurisdictions in which we conduct business. Changes in laws, rules, regulations, policies or requirements could result in the need to modify our products and could affect the demand for our products, which may have an adverse impact on our future operating results. In addition, we must comply with regulations restricting our ability to include lead and certain other substances in our products. If we do not comply with applicable laws, rules and regulations we could be subject to costs and liabilities and our business may be adversely impacted. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">19 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We are subject to regulatory constraints and compliance requirements due to our status as a publicly held company. Public company compliance costs are increasing due to the increase in SEC regulations and enforcement actions, and the heightened scrutiny that we and the public accounting industry face from the Public Companies Accounting Oversight Board. Additionally, certain new and proposed regulations in the State of Rhode Island, where we are headquartered, are likely to increase compliance costs. In some instances, the regulations may mandate action on our part for which, to our knowledge, no current technical means to comply exist. If enacted, the costs to comply with these regulations could have a material adverse impact on our business. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our business outside of the United States exposes us to foreign and additional U.S. laws and regulations, including but not limited to, laws and regulations relating to taxation, business licensing or certification requirements, employee rights and protection, consumer protection, intellectual property rights, consumer and data protection, privacy, encryption, restrictions on pricing or discounts, and the U.S. Foreign Corrupt Practices Act and other applicable U.S. and foreign laws prohibiting corrupt payments to government officials and other third parties. For example, the increased use of sanctions in U.S. international relations recently has increased our cost of compliance with the regulations intended to enforce them. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Section&#160;404 of the Sarbanes-Oxley Act of 2002 requires that companies evaluate and report on the effectiveness of their internal control over financial reporting and any inability to achieve and maintain effective disclosure controls and procedures and internal control over financial reporting, could adversely affect our results of operations, our stock price and investor confidence in our company. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We have identified a material weakness in our internal control over financial reporting and that weakness has led to a conclusion that our internal control over financial reporting and disclosure controls and procedures were not effective as of January&#160;31, 2023. The material weakness related to our inability to maintain effective controls to properly identify and assess significant <span style="white-space:nowrap">non-routine</span> transactions. Management is taking action to remediate the deficiencies in its internal controls over financial reporting by augmenting resources in our financial organization. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">If action to remediate this material weakness is not completed on a timely basis, or if other remediation efforts are not successful, we may, in the future, identify additional internal control deficiencies that could rise to the level of a material weakness or uncover other errors in financial reporting. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Failure to have effective internal control over financial reporting and disclosure controls and procedures could impair our ability to produce accurate financial statements on a timely basis, or provide reliable financial statements needed for business decision processes, and our business and results of operations could be harmed. Additionally, investors could lose confidence in our reported financial information and our ability to obtain additional financing, or additional financing on favorable terms, could be adversely affected. Also, failure to maintain effective internal control over financial reporting could result in sanctions by regulatory authorities. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Certain of our operations and products are subject to environmental, health and safety laws and regulations, which may result in substantial compliance costs or otherwise adversely affect our business. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our operations are subject to numerous federal, state, local and foreign laws and regulations relating to protection of the environment, including those that impose limitations on the discharge of pollutants into the air and water, establish standards for the use, treatment, storage and disposal of solid and hazardous materials and wastes, and govern the cleanup of contaminated sites. As such, our business is subject to and may be materially and adversely affected by compliance obligations and other liabilities under those environmental, health and safety laws and regulations. Certain of our products contain, and some of manufacturing operations use various substances which have been or may be deemed to be hazardous or dangerous. Thus, we have and will continue to generate a generally limited amounts of hazardous waste in our operations. We manage our compliance with laws and regulations and the proper mitigation of risks internally and through the input of external consultants and outside service providers and we believe we are in material compliance with all applicable environmental laws and regulations. We desire to reduce and ultimately eliminate any adverse environmental impact of our </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">20 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
business and to comply with relevant laws and regulations. We expect this effort to affect our ongoing operations and require additional capital and operating expenditures. If we were to fail to manage our environmental compliance effectively, we could suffer economic or reputational harm. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Our operations are subject to anti-corruption laws, including the U.S. Foreign Corrupt Practices Act, and any determination that we or any of our subsidiaries has violated the Foreign Corrupt Practices Act could have a material adverse effect on our business. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The U.S. Foreign Corrupt Practices Act (FCPA), the UK Bribery Act and similar worldwide anti-corruption laws generally prohibit companies and their intermediaries from making improper payments to government officials and others for the purpose of obtaining or retaining business. Our internal policies mandate compliance with these anti-corruption laws. We operate in parts of the world that have experienced governmental corruption to some degree, and in certain circumstances, strict compliance with anti-corruption laws may conflict with local customs and practices. Despite our training and compliance programs, there can be no assurance that our internal control policies and procedures will protect us from reckless or criminal acts committed by those of our employees or agents who violate our policies. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Unauthorized access to personal data could give rise to liabilities as a result of governmental regulation, conflicting legal requirements or differing views of personal privacy rights and compliance with laws designed to prevent unauthorized access of personal data could be costly. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We collect and store certain data, including proprietary business information, and may have access to confidential or personal information that is subject to privacy and security laws, regulations and customer-imposed controls. Security breaches or other unauthorized access to, or the use or transmission of, personal user information could result in a variety of claims against us, including privacy-related claims. There are numerous federal, state, local, and international laws and regulations regarding privacy and the storage, sharing, use, processing, disclosure and protection of this kind of information, the scope of which are changing, inconsistent and conflicting and subject to differing interpretations. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We also expect that there will continue to be new laws, regulations, and industry standards concerning privacy, data protection, and information security proposed and enacted in various jurisdictions. For example, in 2016 the European Commission adopted the&#160;General Data Protection Regulation (GDPR), a comprehensive privacy and data protection reform that became effective in May 2018. The GDPR, which is applicable to all companies processing data of European Union residents, imposes significant fines and sanctions for violations. These requirements are complicated and compliance is technically complex to maintain. We contract with outside experts to advise us, conduct internal and external compliance training, and believe we are currently in compliance, however, maintaining compliance has increased costs and diverted resources. Similarly, the California Consumer Privacy Act of 2018, which was enacted in June 2018 and came into effect on January&#160;1, 2020, provides a new private right of action for data breaches and requires companies that process information on California residents to make new disclosures to consumers about their data collection, use and sharing practices and allow consumers to opt out of certain data sharing with third parties. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Additionally, other jurisdictions have enacted or are enacting data localization laws that require data generated in or relating to the residents of those jurisdictions to be physically stored within those jurisdictions. In many cases, these laws and regulations apply not only to transfers between unrelated third parties but also to transfers between us and our subsidiaries. All these evolving compliance and operational requirements impose significant costs that are likely to increase over time. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">While we continue to assess these requirements and the ways they may impact the conduct of our business, we believe that we materially comply with applicable laws and industry codes of conduct relating to privacy and data protection. There is no assurance that we will not be subject to claims that we have violated applicable laws or codes of conduct, that we will be able to successfully defend against such claims or that we will not be subject to significant fines and penalties in the event we are found not to be in compliance with such laws or codes of conduct. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">21 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Any failure or perceived failure by us (or any third parties with whom we have contracted to store such information) to comply with applicable privacy and security laws, policies or related contractual obligations or any compromise of security that results in unauthorized access to personal information may result in governmental enforcement actions, significant fines, litigation, claims of breach of contract and indemnity by third parties and adverse publicity. In the case of such an event, our reputation may be harmed, we could lose current and potential users and the competitive positions of our various brands could be diminished, any or all of which could adversely affect our business, financial condition and results of operations. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Changes in accounting standards and subjective assumptions, estimates, and judgments by management related to complex accounting matters could significantly affect our financial results or financial condition. </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Generally accepted accounting principles and related accounting pronouncements, implementation guidelines, and interpretations with regard to a wide range of matters that are relevant to our business, such as revenue recognition, asset impairment and fair value determinations, inventories, business combinations and intangible asset valuations, income taxes, and warranties, are highly complex and involve many subjective assumptions, estimates and judgments. Changes in these rules or their interpretation or changes in underlying assumptions, estimates, or judgments could significantly change our reported or expected financial performance or financial condition. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold" id="toc415415_3"><span style="font-style:italic">Item&#160;1B. Unresolved Staff Comments </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">None. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_4"><span style="font-weight:bold">Item&#160;2.</span><span style="font-weight:bold"><span style="font-style:italic"> Properties </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The following table sets forth information regarding our principal owned properties. The West Warwick property is subject to a security agreement and a mortgage in favor of the lender under our credit facility. </p> <p style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table cellspacing="0" cellpadding="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">


<tr>

<td style="width:42%"></td>

<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:2%"></td>
<td style="width:46%"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold">Location</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Approximate<br />Square<br />Footage</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">Principal Use</p></td></tr>


<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">West Warwick, Rhode Island, United States</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:top">&#160;</td>
<td style="white-space:nowrap;vertical-align:top" align="right">135,500</td>
<td style="white-space:nowrap;vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Corporate headquarters, research and development, manufacturing, sales and service</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Elk Grove Village, Illinois</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">34,460</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Astro Machine principal place of business</td></tr>
</table> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We also lease facilities in various other locations. The following information pertains to each location: </p> <p style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table cellspacing="0" cellpadding="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">


<tr>

<td style="width:41%"></td>

<td style="vertical-align:bottom;width:3%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:3%"></td>
<td style="width:46%"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold">Location</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Approximate<br />Square<br />Footage</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">Principal Use</p></td></tr>


<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Dietzenbach, Germany</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">18,630</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Manufacturing, sales and service</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Copenhagen, Denmark</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">4,800</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">R&amp;D, sales and service</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Brossard, Quebec, Canada</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">4,500</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Manufacturing, sales and service</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Elancourt, France</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">4,150</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Sales and service</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Irvine, California, United States</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">3,100</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Sales</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Shah Alam, Selangor, Malaysia</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">2,067</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Sales</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Guangzhou, China</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">1,253</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Sales and service</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Maidenhead, England</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">1,021</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Sales and service</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Shanghai, China</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">425</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Sales</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Mexico City, Mexico</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">97</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap">Sales</td></tr>
</table> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The West Warwick facility is used by both of our business segments, but the Elk Grove facility and leased locations are primarily used by the PI segment. We believe our facilities are well maintained, in good operating condition and generally adequate to meet our needs for the foreseeable future. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">22 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_5"><span style="font-weight:bold">Item&#160;3.</span><span style="font-weight:bold"><span style="font-style:italic"> Legal Proceedings </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We are party to various legal proceedings arising from normal business activities. Management believes that the ultimate resolution of these matters will not have a material adverse effect on our financial position, results of operations or cash flows. Additionally, because of the nature of our business, we may be subject in the future to lawsuits or other claims, including those pertaining to product liability, patent infringement, commercial, employment, employee benefits, environmental and stockholder matters and an unfavorable resolution of any of these matters could materially affect our future results of operations, cash flows or financial position. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_6"><span style="font-weight:bold">Item&#160;4.</span><span style="font-weight:bold"><span style="font-style:italic"> Mine Safety Disclosures </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Not <span style="font-style:italic">applicable</span>. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">23 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold;text-align:center">PART II </p> <p style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:7%;vertical-align:top" align="left" id="toc415415_7"><span style="font-weight:bold">Item&#160;5.</span></td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:left"><span style="font-weight:bold"></span><span style="font-weight:bold"><span style="font-style:italic">Market for the Registrant</span></span><span style="font-weight:bold"></span><span style="font-weight:bold"><span style="font-style:italic">&#8217;</span></span><span style="font-weight:bold"></span><span style="font-weight:bold"><span style="font-style:italic">s Common Stock, Related Stockholder Matters and Issuer Purchases of Equity Securities</span></span><span style="font-weight:bold"> </span></p></td></tr></table> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our common stock trades on the NASDAQ Global Market under the symbol &#8220;ALOT.&#8221; </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We had approximately 390 shareholders of record as of April&#160;10, 2023, which does not reflect shareholders with beneficial ownership in shares held in nominee name. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Stock Repurchases </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During the fourth quarter of fiscal 2023, we made the following repurchases of our common stock: </p> <p style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table cellspacing="0" cellpadding="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:92%;border:0;margin:0 auto">


<tr>

<td style="width:38%"></td>

<td style="vertical-align:bottom;width:7%"></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:6%"></td>

<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:7%"></td>

<td style="vertical-align:bottom;width:13%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:13%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Total&#160;Number<br />of&#160;Shares<br />Repurchased</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Average<br />Price&#160;paid<br />Per&#160;Share&#160;($)</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Total&#160;Number&#160;of<br />Shares&#160;Purchased&#160;as<br />Part&#160;of&#160;Publicly<br />Announced Plans<br />or&#160;Programs</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Maximum&#160;Number<br />of&#160;Shares&#160;That<br />May&#160;Be&#160;Purchased<br />Under&#160;the&#160;Plans<br />or&#160;Programs</span></td>
<td style="vertical-align:bottom">&#160;</td></tr>


<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">November&#160;1&#160;&#8211;&#160;November&#160;30</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">December 1&#160;&#8211;&#160;December 31</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">678</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;(a)(b)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">11.70</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;(a)(b)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">January 1&#160;&#8211;&#160;January 31</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
</table> <p style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:4%;vertical-align:top" align="left">(a)</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:left">An executive of the company delivered 442 shares of our common stock toward the satisfaction of taxes due in connection with the vesting of restricted shares. The shares delivered were valued at a market value of $11.67 per share and are included with treasury stock in the consolidated balance sheet. </p></td></tr></table>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:4%;vertical-align:top" align="left">(b)</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:left">An executive of the company delivered 236 shares of our common stock toward the satisfaction of taxes due in connection with the vesting of restricted shares. The shares delivered were valued at a market value of $11.75 per share and are included with treasury stock in the consolidated balance sheet. </p></td></tr></table> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold" id="toc415415_8">Item&#160;6. [Reserved] </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_9"><span style="font-weight:bold">Item&#160;7.</span><span style="font-weight:bold"><span style="font-style:italic"> Management</span></span><span style="font-weight:bold"></span><span style="font-weight:bold"><span style="font-style:italic">&#8217;</span></span><span style="font-weight:bold"></span><span style="font-weight:bold"><span style="font-style:italic">s Discussion and Analysis of Financial Condition and Results of Operations </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">The following discussion and analysis are meant to provide material information relevant to an assessment of the financial condition and results of operations of our company, including an evaluation of the amounts of cash flows from operations and outside resources, liquidity and certain other factors that may affect future results so as to allow investors to better view our company from management&#8217;s perspective. The following discussion and analysis of our financial condition and results of operations should be read together with our financial statements and the related notes and other financial information included elsewhere in this annual report on Form <span style="white-space:nowrap">10-K.</span> Some of the information contained in this discussion and analysis or set forth elsewhere in this annual report on Form <span style="white-space:nowrap">10-K,</span> including information with respect to our plans and strategy for our business and financing, includes forward-looking statements that involve risks and uncertainties. Carefully review the &#8220;Forward-Looking Statements&#8221; and &#8220;Risk Factors&#8221; sections of this annual report on Form <span style="white-space:nowrap">10-K</span> for a discussion of important factors that could cause actual results to differ materially from the results described in or implied by the forward-looking statements contained in the following discussion and analysis. </span></p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Overview </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We are a multi-national enterprise that leverages its proprietary data visualization technologies to design, develop, manufacture, distribute and service a broad range of products that acquire, store, analyze and present data in multiple formats. We organize our structure around a core set of competencies, including research and </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">24 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
development, manufacturing, service, marketing and distribution. We market and sell our products and services through the following two segments: </p> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Product Identification (&#8220;PI&#8221;) &#8211; offers color and monochromatic digital label printers, over-printers and custom OEM printers. PI also provides software to design, manage and print labeling and packaging images locally and across networked printing systems, as well as all related printing supplies such as pressure-sensitive labels, tags, inks, toners and thermal transfer ribbons used by digital printers. PI also provides <span style="white-space:nowrap">on-site</span> and remote service, spare parts and various service contracts. </p></td></tr></table> <p style="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top" align="left">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-family:Times New Roman; font-size:10pt;text-align:left">Test and Measurement (&#8220;T&amp;M&#8221;)&#160;&#8211; offers a suite of products and services that acquire data from local and networked data streams and sensors as well as wired and wireless networks. The T&amp;M segment includes a line of aerospace printers used to print hard copies of data required for the safe and efficient operation of aircraft, including navigation maps, clearances, arrival and departure procedures, NOTAMS, flight itineraries, weather maps, performance data, passenger data, and various air traffic control data. Aerospace products also include aircraft networking systems for high-speed onboard data transfer. T&amp;M also provides repairs, service and spare parts. </p></td></tr></table> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On August 4, 2022, we completed the acquisition of Astro Machine, an Illinois-based manufacturer of printing equipment, including label printers, tabbers, conveyors, and envelope feeders, for aggregate consideration of $17.1&#160;million. Astro Machine is reported as part of our PI segment beginning with the third quarter of fiscal 2023. Refer to Note 2, &#8220;Acquisition,&#8221; in our consolidated financial statements included elsewhere in this report for further details. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We market and sell our products and services globally through a diverse distribution structure of direct sales personnel, manufacturers&#8217; representatives and authorized dealers that deliver a full complement of branded products and services to customers in our respective markets. Our growth strategy centers on organic growth through product innovation made possible by research and development initiatives, as well as strategic acquisitions that fit into or complement existing core businesses. In fiscal 2023, 2022, and 2021, revenue from customers in various geographic areas outside the United States, primarily in Western Europe, Canada and Asia, amounted to $50.6&#160;million, $49.3&#160;million, and $45.1&#160;million, respectively. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We maintain an active program of product research and development. We spent approximately $6.8&#160;million in both fiscal 2023 and 2022, and $6.2&#160;million in fiscal 2021 on Company-sponsored product development. We are committed to continuous product development as essential to our organic growth and expect to continue our focus on research and development efforts in fiscal 2024 and beyond. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We also continue to invest in sales and marketing initiatives by expanding and improving the existing sales force and using various marketing campaigns to achieve our goals of sales growth and increased profitability. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman;font-weight:bold"><span style="white-space:nowrap">COVID-19</span> Update </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">All of our global operations were materially adversely affected by the worldwide <span style="white-space:nowrap">COVID-19</span> pandemic and the related supply-chain disruptions. In the aftermath of the immediate severe impacts of <span style="white-space:nowrap">COVID-19</span> on our operations and financial performance the changes in our customers&#8217; purchasing behavior, the post-pandemic impact of inflation from macroeconomic factors, and the continued and lingering structural impacts on our global supply chain, particularly with respect to the availability and costs of electronic components, have made planning for customer demand and manufacturing production more difficult. Also, it has led to a rise in the cost of a number of classes of acquired goods for both the T&amp;M and PI segments. We will continue to evaluate the impact of <span style="white-space:nowrap">COVID-19</span> and its aftermath effects on our business, results of operations and cash flows throughout fiscal 2024, including the potential impacts on various estimates and assumptions inherent in the preparation of the consolidated financial statements. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Since the <span style="white-space:nowrap">COVID-19</span> pandemic began we have experienced difficulties in obtaining raw materials and components for our products. Some of the structural dislocations in the global economy that were triggered by the pandemic are prolonging these difficulties. Particularly with respect to certain electronic components for legacy </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">25 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
products in our T&amp;M segment, availability has been curtailed and may not recover, and as a result we have had to accelerate product redesign and as quickly transition customers to products with more viable long-term product configurations. We expect to incur substantial costs in doing so but are unable to accurately estimate the financial impact due to the rapidly changing environment. We also have had to incur additional costs, such as higher shipping fees (i.e., air rather than ocean freight) and though these have abated to a degree, they have not returned to <span style="white-space:nowrap">pre-pandemic</span> levels. These factors have negatively impacted our efficiency, have delayed shipments for each of the fiscal quarters of fiscal 2023, and have caused what we believe are product shortages. We are addressing these issues through long-range planning and procuring higher inventory levels for the affected items to help mitigate potential shortages whenever practicable. For our T&amp;M segment, we are also monitoring and reacting to extended lead times on electronic components, and utilizing a variety of strategies, including blanket orders, vendor-bonded inventories, extended commitments to our supply base, and seeking alternative suppliers. Additionally, we have taken actions to increase regular contact with our essential vendors and increased our forecasting horizon for our products to help us better manage our supply chain. In some cases, we are working with our vendors to help them procure components. Similarly, in our PI segment, we are increasing our inventory levels to ensure the adequacy of the supplies we sell to customers who use the printers we have sold to them. Our strategies to counteract these supply chain dislocations have significantly increased the amount of inventory we maintain to support our product sales. We have also experienced several situations where component shortages and scarcity have required us to pay significantly higher costs to obtain those components, particularly electronic components and circuit board assemblies in the T&amp;M segment and inks and printer machine parts in the PI segment. We will continue to monitor our supply chain going forward and update our mitigation strategies as we determine appropriate. We are not able to predict how current supply chain difficulties will develop in the future, and if the steps we are taking are not effective, it could have a material adverse impact on our business and results of operations. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic"><span style="text-decoration:underline">Product Identification Update </span></span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The <span style="white-space:nowrap">COVID-19</span> pandemic impacted our PI business by limiting our ability to meet with customers to demonstrate our products at trade shows and <span style="white-space:nowrap">on-site</span> in their facilities was curtailed. We partially countered this through a variety of virtual, <span style="white-space:nowrap">on-line</span> selling and digital marketing strategies, a number of which we continue to emphasize today. The degree to which post-pandemic selling practices will revert to traditional practices, and the ultimate mix of customer engagement methods of <span style="white-space:nowrap"><span style="white-space:nowrap">face-to-face</span></span> selling versus digital selling methods are just starting to recover. For example, throughout fiscal 2023 we attended numerous trade shows, but demand generation through those selling methods has not fully recovered and digital marketing has, we believe, become a more permanent element of our <span style="white-space:nowrap"><span style="white-space:nowrap">go-to-market</span></span> strategy. This has required us to shift resources to those technologies. Further, the reliability of timely delivery of acceptable quality printer components from one of our suppliers has deteriorated post-pandemic causing us to incur additional direct procurement costs to carry higher inventories to assure adequate supplies to satisfy customers, as well as causing us to incur additional warranty and technical service costs to offset those impacts and to invest considerable time and resources with that supplier to improve their performance. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic"><span style="text-decoration:underline">Test&#160;&amp; Measurement Update </span></span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The aerospace industry, which we serve through our aerospace product line, was significantly disrupted by the <span style="white-space:nowrap">COVID-19</span> pandemic, because of the severe decline in the demand for air travel, demand for aircraft, and a general curtailment of aircraft production rates. This had a material adverse impact on our financial results. Although air travel demand and aircraft production demand have improved, the direct and secondary impacts of the demand decline have somewhat abated, they have not recovered completely. As a result, demand for our products has not fully recovered to <span style="white-space:nowrap">pre-pandemic</span> levels. We believe that it will be at least another two or more years before we reach full revenue recovery due to the lingering impacts of the pandemic era on the economic structure of the airline industry. General economic conditions could also still become a negative factor impacting demand for new aircraft, which could potentially stall or reverse current favorable trends. If this were to happen individually or in combination, these factors would be difficult to respond to, which could have a material adverse impact on our business operations and financial results. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">26 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Results of Operations </p> <p style="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Fiscal 2023 compared to Fiscal 2022 </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The following table presents the revenue of each of our segments, as well as the percentage of total revenue and change from the prior year. </p> <p style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table cellspacing="0" cellpadding="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">


<tr>

<td style="width:45%"></td>

<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">($ in thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="10" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">2023</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="6" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">2022</span></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Revenue</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">As&#160;a&#160;%&#160;of<br />Total&#160;Revenue</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">%&#160;Change<br />Over&#160;Prior&#160;Year</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Revenue</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">As&#160;a&#160;%&#160;of<br />Total&#160;Revenue</span></td>
<td style="vertical-align:bottom">&#160;</td></tr>


<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">P I</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">103,089</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">72.3</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">13.4</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">90,915</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">77.4</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">T&amp;M</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">39,438</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">27.7</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">48.5</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">26,565</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">22.6</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Total</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">142,527</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">100.0</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">21.3</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">117,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">100.0</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td></tr>
</table> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Net revenue in fiscal 2023 was $142.5&#160;million, a 21.3% increase compared to net revenue of $117.5&#160;million for fiscal 2022. Current year revenue through domestic channels was $91.8&#160;million, an increase of 34.8% from prior year domestic revenue of $68.2&#160;million. International revenue of $50.6&#160;million for fiscal 2023 increased 2.7% compared to prior year international revenue of $49.3&#160;million. Fiscal 2023 international revenue reflects an unfavorable foreign exchange rate impact of $3.5&#160;million, compared to a favorable foreign exchange rate impact of $1.1&#160;million in fiscal 2022. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Hardware revenue in fiscal 2023 was $42.4&#160;million, an $11.0&#160;million or 34.8% increase compared to fiscal 2022 hardware revenue of $31.5&#160;million due to increased hardware sales in both the T&amp;M and PI segments. T&amp;M hardware sales increased 44.2% or $7.5&#160;million compared to the prior year primarily due to increased sales in our aerospace printer product line. Current year hardware sales in the PI segment increased 23.9% or $3.5&#160;million compared to the prior year, predominately as a result of the August 2022 acquisition of Astro Machine. The increase in PI hardware sales for the current year was slightly offset by a decline in sales of our TrojanLabel product line printers. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Revenue from supplies in fiscal 2023 was $82.1&#160;million, a 12.1% or $8.8&#160;million increase compared to fiscal 2022 supplies revenue of $73.2&#160;million. Supplies revenue increased in both the PI and T&amp;M segment in the current year, with the increase primarily due to the contribution of $6.7&#160;million of supply sales from the newly acquired Astro Machine in the PI segment. Also contributing to the increase in current year supply revenue was the increase in paper supply revenue for the aerospace printers in the T&amp;M segment and the increased sales of supplies in our TrojanLabel product line in the PI segment. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Service and other revenue in fiscal 2023 was $18.0&#160;million, a 41.3% increase compared to fiscal 2022 service and other revenue of $12.7&#160;million. The increase is due primarily to significantly increased repair and parts revenue for aerospace printer products in the T&amp;M segment due to the impact of increased flight hour usage and pricing increases. Also contributing to the current year increase was Astro Machine parts revenues included since the acquisition, offset by modest declines in aftermarket parts sales for Quick Label related products in the PI segment. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Gross profit was $48.2&#160;million for fiscal 2023, reflecting a 10.1% increase compared to fiscal 2022 gross profit of $43.7&#160;million. Our gross profit margin of 33.8% in fiscal 2023 reflects a 3.4 percentage point decrease compared to fiscal 2022 gross profit margin of 37.2%. The lower gross profit margin for the current year compared to the prior year is primarily attributable to the inclusion of Astro Machine for the six months since its acquisition, because of the impact of its lower gross margin business model, plus the impact of the employment retention tax credit (&#8220;ERC&#8221;) in the prior year, which reduced manufacturing payroll taxes, a component of cost of revenue, in the amount of $1.7&#160;million in the second quarter of the prior year. Lastly, excess royalties (above the minimum guaranteed royalty amount), which are payable in connection with our license from Honeywell to produce aircraft cockpit printers for two narrow-body aircraft programs increased due to higher volumes of sales. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">27 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Operating expenses for the current year were $42.7&#160;million, representing an 8.2% increase from the prior year&#8217;s operating expenses of $39.5&#160;million. Specifically, selling and marketing expenses of $24.5&#160;million in fiscal 2023 increased 5.5% from the prior year amount of $23.2&#160;million. The increase in selling and marketing expenses for the current year is primarily due to a decrease in payroll taxes in the second quarter of the prior year related to the ERC, which reduced payroll taxes in the amount of $0.8&#160;million, as well as the current year increase in employee wages and travel and entertainment expenses. The current year increase in selling and marketing expenses was partially offset by a decrease in commissions and advertising and trade show expenses. General and administrative expenses increased 19.7% to $11.4&#160;million in the current year compared to $9.6&#160;million in the prior year, primarily due to an increase in outside service fees and employee wages, and the impact of the ERC, which reduced manufacturing payroll taxes in the amount of $0.3&#160;million in the third quarter of the prior year, partially offset by a decrease in bonus and advertising and trade show expenses. Research&#160;&amp; development (&#8220;R&amp;D&#8221;) costs in fiscal 2023 of $6.8&#160;million remained relatively unchanged from fiscal 2022, as increases in wages and benefits were substantially offset by decreases in bonus and supplies and repair expenses. The R&amp;D spending level for fiscal 2023 represents 4.8% of net revenue, compared to the prior year level of&#160;5.7%. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Other expense in fiscal 2023 was $2.0&#160;million compared to other income of $2.8&#160;million in fiscal 2022. Current year expense includes $1.7&#160;million of interest expense on our debt and revolving line of credit and $0.4&#160;million of net foreign exchange loss, offset by net other income of $0.1&#160;million. Prior year other income includes $4.5&#160;million related to the forgiveness of the loan we received under the Paycheck Protection Program (the &#8220;PPP&#8221;), partially offset by $0.7&#160;million related to the <span style="white-space:nowrap">write-off</span> of our Oracle EnterpriseOne ERP system and related prepaid service and maintenance contracts as a result of the full implementation of a new ERP system in our <span style="white-space:nowrap">US-based</span> operations in the fourth quarter of fiscal 2022, interest expense on debt of $0.7&#160;million, and net foreign exchange loss of $0.3&#160;million. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We recognized $0.7&#160;million of income tax expense for the current fiscal year, resulting in an effective tax rate of 22.0% compared to 8.6% in fiscal 2022. The increase in the effective tax rate in fiscal 2023 from fiscal 2022 is primarily related to the absence of the impact of the PPP loan forgiveness, which is <span style="white-space:nowrap">tax-exempt</span> income that was a <span style="white-space:nowrap">one-time</span> item that reduced the rate in fiscal 2022. Specific items increasing the effective tax rate in fiscal 2023 include the change in reserves related to uncertain tax positions under ASC 740 and an increase in the valuation allowance recorded on our China net operating losses. This increase was offset by state taxes, return to provision adjustments, share-based compensation, R&amp;D tax credits, and foreign derived intangible income (&#8220;FDII&#8221;) deduction. During fiscal 2022, we recognized $0.6&#160;million of income tax expense for the prior fiscal year, resulting in an effective tax rate of 8.6%. Specific items decreasing the effective tax rate include PPP loan forgiveness <span style="white-space:nowrap">tax-exempt</span> income, R&amp;D tax credits, foreign derived intangible income (&#8220;FDII&#8221;) deductions, and a change in reserves related to ASC 740 liabilities. This decrease was offset by state taxes, return to provision adjustments, and taxes on foreign earnings. The PPP loan forgiveness is excluded from taxable income. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Net income for fiscal 2023 was $2.7&#160;million, or $0.36 per diluted share. Net income for fiscal 2022 was $6.4&#160;million, or $0.88 per diluted share. The results for the current year were impacted by expenses of $0.7&#160;million ($0.5&#160;million net of tax, or $0.07 per diluted share) related to transaction costs of the Astro Machine acquisition. The results for the prior period were impacted by income of $4.5&#160;million ($4.4&#160;million net of tax, or $0.60 per diluted share) related to the forgiveness of our PPP loan, income of $2.1&#160;million ($1.6&#160;million net of tax, or $0.22 per diluted share) related to the net ERC and expense of $0.7&#160;million ($0.5&#160;million net of tax, or $0.07 per diluted share) related to the <span style="white-space:nowrap">write-off</span> of our Oracle EnterpriseOne ERP system and related prepaid service and maintenance contracts. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Fiscal 2022 compared to Fiscal 2021 </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">For a comparison of our results of operations for the fiscal years ended January&#160;31, 2022, and January&#160;31, 2021, see &#8220;Part II, Item 7. Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations&#8221; of our annual report on Form <span style="white-space:nowrap">10-K</span> for the fiscal year ended January&#160;31, 2022, filed with the SEC on April&#160;18, 2022. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">28 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Segment Analysis </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We report two segments consistent with our product revenue groups: PI and T&amp;M. Segment performance is evaluated based on the operating segment&#8217;s profit (loss) before corporate and financial administration expenses. The following table summarizes selected financial information by segment. </p> <p style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table cellspacing="0" cellpadding="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">


<tr>

<td style="width:36%"></td>

<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>

<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">($ in thousands)</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="10" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Revenue</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="10" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Segment&#160;Operating&#160;Profit<br />(Loss)</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="10" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Segment&#160;Operating&#160;Profit&#160;(Loss)<br />as&#160;a&#160;% of Revenue</span></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">2023</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">2022</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">2021</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">2023</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">2022</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">2021</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">2023</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">2022</span></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">2021</span></td>
<td style="vertical-align:bottom">&#160;</td></tr>


<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">P I</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">103,089</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">90,915</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">90,268</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">7,889</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">10,411</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">12,885</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">7.7</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">11.5</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">14.3</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">T&amp;M</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">39,438</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">26,565</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">25,765</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">8,989</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">3,398</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">(1,032</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">22.8</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">12.8</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">(4.0</td>
<td style="white-space:nowrap;vertical-align:bottom">)%&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Total</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">142,527</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">117,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">116,033</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">16,878</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">13,809</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">11,853</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">11.8</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">11.8</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">10.2</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Corporate Expenses</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">11,435</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">9,553</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">9,420</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Operating Income</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">5,443</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">4,256</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">2,433</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Other Income (Expense), Net</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">(2,033</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">2,778</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">(254</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Income Before Income Taxes</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">3,410</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">7,034</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">2,179</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Income Tax Provision</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">749</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">605</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">895</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:1.00px solid #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Net Income</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">2,661</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">6,429</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">1,284</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; border-top:3.00px double #000000">&#160;</p></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
</table> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Product Identification </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Revenue from the PI segment increased 13.4% in fiscal 2023, with revenue of $103.1&#160;million compared to revenue of $90.9&#160;million in the prior year. The current year increase is attributable to the contribution of the newly acquired Astro Machine, which provided revenue of $12.5&#160;million for the current year. Trojan Label related product supply revenue also grew in fiscal 2023 compared to the prior year due to the larger installed base of these printers. The current year increase in PI revenue was slightly offset by declines in the sales of Trojan label hardware products resulting from the market reaction to quality problems caused by quality and reliability issues we faced from one supplier. Quick Label revenues were essentially flat as compared to the prior year. At the current time, we expect PI revenue to increase in fiscal 2024 due to the impact of a full year of Astro Machine revenue and recovery in both hardware and supplies in the other product lines, partly as the result of new product introductions. PI current year segment operating profit was $7.9&#160;million with a profit margin of 7.7%, compared to the prior year segment operating profit of $10.4&#160;million and related profit margin of 11.5%. Despite the inclusion of $1.6&#160;million in operating profit contribution from Astro Machine, the primary reason for the decline in operating profit and margin was the inclusion in fiscal 2022 of $1.4&#160;million of net benefit from the ERC, which reduced payroll taxes in the segment. The decrease in current year segment operating profit and margin, was also due to the result of a higher relative mix of lower gross profit product sales, higher travel and trade show expense, and increased warranty expenses. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Test&#160;&amp; Measurement </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Revenue from the T&amp;M product group was $39.4&#160;million for fiscal 2023, a 48.5% increase compared to revenue of $26.6&#160;million in the prior year. The current year increase in T&amp;M revenue is primarily due to a 44.2% or $7.5&#160;million increase in hardware sales resulting primarily from increased aerospace printer product unit volume. Demand for printers, especially for narrow body aircraft, has increased due to the post-pandemic recovery in air travel demand and new orders of airplanes and the corresponding increase in production rates. The sales of printers for wide-body aircraft have increased but at much slower rates compared with narrow body demand. Sales of ToughSwitch ethernet products also recovered to levels consistent with the fiscal 2019 through </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">29 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
fiscal 2021 period after a large decline in fiscal 2022, and we currently expect comparable revenue from those products in fiscal 2024. Our current expectation is that printers narrow-body aircraft will continue to recover to <span style="white-space:nowrap">pre-pandemic</span> levels over the next two years, although at a slower rate than the recovery in fiscal 2023. We believe any recovery in shipments for larger wide-body aircraft will take longer. The increase in fiscal 2023 hardware revenue in the T&amp;M segment was also impacted by $1.1&#160;million in revenue recognized in the fourth as the result of successful claims for component cost increases for printer shipments to one customer throughout most of fiscal 2023 as described in Note 3, &#8220;Revenue Recognition,&#8221; in our consolidated financial statements included elsewhere in this report. In the fourth quarter, we recognized revenue of $0.8&#160;million in connection with a new Asset Purchase and License Agreement with Honeywell Inc. (&#8220;New HW Agreement&#8221;) as described in Note 12, &#8220;Royalty Obligation,&#8221; in our consolidated financial statements included elsewhere in this report. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The current year increase in T&amp;M revenue was additionally favorably impacted by increased repair, parts and paper supply revenue related to aerospace printers, as flight hours and product utilization increased. At this time, we believe the outlook for T&amp;M supplies, service and other revenue is favorable as the expected higher flight hours in commercial aviation should correlate favorably to higher aerospace printer supplies, parts and repair revenue. T&amp;M current year segment operating profit was $9.0&#160;million resulting in a 22.8% profit margin compared to the prior year segment operating profit of $3.4&#160;million and related operating margin of 12.8%. The increased profit and margins were primarily attributable to the robust turnaround in revenue, particularly in repair, parts and supplies revenues at high margins, and were offset by the impact of higher components costs, as well as the fact that prior year&#8217;s operating profit included the impact of $0.8&#160;million in net employee retention tax credits that reduced manufacturing and operating costs. Also contributing to the increase was the favorable impact in the fourth quarter of the receipt of improved pricing on certain contracts that related to the entire year and the impact of the New HW Agreement. Selling, marketing and administrative expense grew in total by $0.6&#160;million in support of the revenue growth, which was a significantly lower rate than revenue growth, demonstrating favorable operating leverage. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Liquidity and Capital Resources </p> <p style="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic"><span style="text-decoration:underline">Overview </span></span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Historically, our primary sources of short-term liquidity have been cash generated from operating activities and borrowings under our revolving credit facility. In fiscal 2023, we used our credit facilities, as further described below, to acquire Astro Machine. We also used our credit facilities and operating cash flow to fund increases in inventories. Substantial increases in inventories were the result of the need to support higher levels of shipments in the aerospace product lines within our T&amp;M segment, and the buildup of inventory buffers to respond to supply chain risks. In the fourth quarter of fiscal 2023, we were able to reduce our outstanding line of credit balance by $4.0&#160;million. Capital spending was very low in fiscal 2023 compared to our historical levels of spending. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We believe that in the coming year, cash flow generation from operations and available unused credit capacity under our credit facility will support our anticipated needs. In fiscal 2024 (after required debt amortization and payment of minimum guaranteed royalty payments to Honeywell), we will be focused on inventory reduction and reduction of debt outstanding under our revolving credit facility, to the degree possible as constrained by supply chain management challenges. We also anticipate that we will have the capacity to spend $1.5 million to $2.0&#160;million in capital to upgrade production machinery to support planned revenue growth and cost reduction objectives. Finally, if further acquisition opportunities develop that would require additional cash above our current available capacity, based on regular communication with our lender, we believe that our current operating performance and the reduction in leverage ratios as measured by the covenants within our credit facilities since the acquisition of Astro Machine would permit us to obtain sufficient additional debt financing, barring any unforeseen changes in the credit and capital markets. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">30 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In connection with our purchase of Astro Machine on August 4, 2022, we entered into a Second Amendment to Amended and Restated Credit Agreement (the &#8220;Second Amendment&#8221;) with Bank of America, N.A., as lender (the &#8220;Lender&#8221;). The Second Amendment amended the Amended and Restated Credit Agreement dated as of July 30, 2020, as amended by the First Amendment to Amended and Restated Credit Agreement, dated as of March 24, 2021, and the LIBOR Transition Amendment, dated as of December 24, 2021 (the &#8220;Existing Credit Agreement,&#8221; and the Existing Credit Agreement as amended by the Second Amendment, the &#8220;Amended Credit Agreement&#8221;), between the Company and the Lender. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Amended Credit Agreement provides for (i)&#160;a new term loan in the principal amount of $6.0&#160;million, which term loan was in addition to the existing term loan outstanding under the Existing Credit Agreement in the principal amount of $9.0&#160;million as of the effective date of the Second Amendment, and (ii)&#160;an increase in the aggregate principal amount of the revolving credit facility available thereunder from $22.5&#160;million to $25.0&#160;million. Under the Amended Credit Agreement, revolving credit loans may continue to be borrowed, at our option, in U.S. Dollars or, subject to certain conditions, Euros, British Pounds, Canadian Dollars or Danish Kroner. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">While we expected that as a result of the impact of the <span style="white-space:nowrap">COVID-19</span> pandemic, some of our customers would experience liquidity pressure and be unable to pay us for products on a timely basis, in general, our recent receivables collection experience has been consistent with our historical experience and a significant deterioration in receivables collection has not occurred. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In response to the <span style="white-space:nowrap">COVID-19</span> pandemic and related economic dislocation, we have implemented and will continue to implement a variety of expense reduction and cash preservation initiatives. On April 27, 2020, our board of directors suspended our quarterly cash dividend beginning with the second quarter of our fiscal year 2021. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">At January&#160;31, 2023, our cash and cash equivalents were $3.9&#160;million. During fiscal 2023, we borrowed a net of $15.9&#160;million on our revolving line of credit, and at January&#160;31, 2023, we had $9.1&#160;million available for borrowing under that facility. </p> <p style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><span style="text-decoration:underline">Indebtedness </span></p> <p style="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Term Loan </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Amended Credit Agreement requires that the term loan be paid in quarterly installments on the last day of each of our fiscal quarters over the term of the Amended Credit Agreement on the following repayment schedule: the principal amount of each quarterly installment required to be paid on the last day of each of our fiscal quarters ending on or about October 31, 2022 through July 31, 2023 is $375,000; and the principal amount of each quarterly installment required to be paid on the last day of each of our fiscal quarters ending on or about October 31, 2023 through April 30, 2027 is $675,000. The entire remaining principal balance of the term loan is required to be paid on August 4, 2027. We may voluntarily prepay the term loan, in whole or in part, from time to time without premium or penalty (other than customary breakage costs, if applicable). We may repay borrowings under the revolving credit facility at any time without premium or penalty (other than customary breakage costs, if applicable), but in any event no later than August 4, 2027, and any outstanding revolving loans thereunder will be due and payable in full, and the revolving credit facility will terminate, on such date. We may reduce or terminate the revolving line of credit at any time, subject to certain thresholds and conditions, without premium or penalty. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The loans under the Amended Credit Agreement are subject to certain mandatory prepayments, subject to various exceptions, from (a)&#160;net cash proceeds from certain dispositions of property, (b)&#160;net cash proceeds from certain issuances of equity, (c)&#160;net cash proceeds from certain issuances of additional debt and (d)&#160;net cash proceeds from certain extraordinary receipts. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">31 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Amounts repaid under the revolving credit facility may be reborrowed, subject to our continued compliance with the Amended Credit Agreement. No amount of the term loan that is repaid may be reborrowed. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The interest rates under the Amended Credit Agreement are as follows: the term loan and revolving credit loans bear interest at a rate per annum equal to, at our option, either (a)&#160;the BSBY Rate as defined in the Amended Credit Agreement (or, in the case of revolving credit loans denominated in a currency other than U.S. Dollars, the applicable quoted rate), plus a margin that varies within a range of 1.60% to 2.50% based on our consolidated leverage ratio, or (b)&#160;a fluctuating reference rate equal to the highest of (i)&#160;the federal fund rate plus 0.50%, (ii) Bank of America&#8217;s publicly announced prime rate, (iii)&#160;the BSBY Rate plus 1.00%, or (iv) 0.50%, plus a margin that varies within a range of 0.60% to 1.50% based on our consolidated leverage ratio. In addition to certain other fees and expenses that we are required to pay to the Lender, we are required to pay a commitment fee on the undrawn portion of the revolving credit facility that varies within a range of 0.15% and 0.35% based on our consolidated leverage ratio. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We must comply with various customary financial and <span style="white-space:nowrap">non-financial</span> covenants under the Amended Credit Agreement. The financial covenants under the Amended Credit Agreement consist of a maximum consolidated leverage ratio, a minimum consolidated fixed charge coverage ratio and a minimum consolidated asset coverage ratio. The primary <span style="white-space:nowrap">non-financial</span> covenants limit our and our subsidiaries&#8217; ability to incur future indebtedness, to place liens on assets, to pay dividends or distributions on our or our subsidiaries&#8217; capital stock, to repurchase or acquire our or our subsidiaries&#8217; capital stock, to conduct mergers or acquisitions, to sell assets, to alter our or our subsidiaries&#8217; capital structure, to make investments and loans, to change the nature of our or our subsidiaries&#8217; business, and to prepay subordinated indebtedness, in each case subject to certain exceptions and thresholds as set forth in the Amended Credit Agreement, certain of which provisions were modified by the Second Amendment. As of January&#160;31, 2023, we believe we are in compliance with all of the covenants in the Credit Agreement. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Lender is entitled to accelerate repayment of the loans and to terminate its revolving credit commitment under the Amended Credit Agreement upon the occurrence of any of various customary events of default, which include, among other events, the following (which are subject, in some cases, to certain grace periods): failure to pay when due any principal, interest or other amounts in respect of the loans, breach of any of our covenants or representations under the loan documents, default under any other of our or our subsidiaries&#8217; significant indebtedness agreements, a bankruptcy, insolvency or similar event with respect to us or any of our subsidiaries, a significant unsatisfied judgment against us or any of our subsidiaries, or a change of control. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our obligations under the Amended Credit Agreement continue to be secured by substantially all of our personal property assets (including a pledge of the equity interests we hold in ANI ApS, AstroNova GmbH and AstroNova SAS), subject to certain exceptions, and by a mortgage on our owned real property in West Warwick, Rhode Island, and are guaranteed by, and secured by substantially all of the personal property assets of Astro Machine. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic"><span style="text-decoration:underline">PPP Loan </span></span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On May 6, 2020, we entered into a Loan Agreement with and executed a promissory note in favor of Greenwood Credit Union (&#8220;Greenwood&#8221;) pursuant to which we borrowed $4.4&#160;million (the &#8220;PPP Loan&#8221;) from Greenwood pursuant to the Paycheck Protection Program (the &#8220;PPP&#8221;) administered by the United States Small Business Administration (the &#8220;SBA&#8221;) and authorized by the Coronavirus Aid, Relief, and Economic Security Act (the &#8220;CARES Act&#8221;), enacted on March 27, 2020. The terms of the PPP Loan were subsequently revised in accordance with the provisions of the Paycheck Protection Flexibility Act of 2020 (the &#8220;PPP Flexibility Act&#8221;), which was enacted on June 5, 2020. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The PPP Loan, which would have matured on May 6, 2022, was unsecured and bore interest at a rate of 1.0% per annum, accruing from the loan date. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">32 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On June 15, 2021, Greenwood notified us that the SBA approved our application for forgiveness of the entire $4.4&#160;million principal balance of our PPP Loan and all accrued interest thereon. As a result, we recorded a $4.5&#160;million gain on the extinguishment of debt in Other Income (Expense) in our condensed consolidated income statement for the year ended January&#160;31, 2022. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic"><span style="text-decoration:underline">Cash Flow </span></span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The statements of cash flows for the years ended January&#160;31, 2023, 2022, and 2021 are included on page&#160;F-9 of this Form <span style="white-space:nowrap">10-K.</span> Net cash used by operating activities was $2.9&#160;million in fiscal 2023 compared to net cash provided by operating activities of $1.4&#160;million in the previous year. The increase in net cash used by operations for the current year is primarily due to an $11.5 million increase in cash used for working capital. The changes in accounts receivable, inventory, income taxes, accounts payable and accrued expenses for the current year decreased cash by $14.3&#160;million in fiscal 2023 compared to $2.8&#160;million in the prior year. The increase in cash used for operations for fiscal 2023 was partially offset by the $3.1&#160;million of ERC receivable received in the first quarter of the current year. Cash from operations for fiscal 2022 was also impacted by the $3.1&#160;million ERC receivable and the $4.5&#160;million gain on the forgiveness of the PPP Loan. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The accounts receivable balance increased to $21.6&#160;million at January&#160;31, 2023, compared to $17.1 million at January&#160;31, 2022. The increase in the accounts receivable balance is related to sales product mix in fiscal 2023 compared to the prior year, as well as the addition of Astro Machine. The days sales outstanding increased to 49 days at year end compared to 45 days at the end of fiscal 2022 contributing to the higher receivables balance at January&#160;31, 2023. The days sales outstanding increase in the current year is due to customer mix, as aerospace receivables typically take longer to collect. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The <span style="white-space:nowrap">year-end</span> inventory balance increased to $51.3&#160;million at January&#160;31, 2023 versus $34.6&#160;million at January&#160;31, 2022, a $16.7&#160;million increase from the prior year end. The increase in our inventory balance is primarily due to difficulty in the supply chain environment, including increased pricing and long lead times to obtain components and supplies, which has required us to increase our component and supply buffer stock to support the demands of our customers in our PI segment. We have also experienced increased inventory levels related to our T&amp;M products to maintain our targeted inventory levels as a result of increased sales in that segment and parts shortage issues. In addition, the acquisition of Astro Machine resulted in increased levels of inventory to support their operations. Inventory days on hand increased to 176 days at the end of the current quarter from 156 days at the prior year end. This increase in working capital has been funded in part by borrowings under our credit facilities and has increased our interest expense. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Net cash used by investing activities for fiscal 2023 was $17.2 million, which includes $17.0&#160;million related to the acquisition of Astro Machine and $0.2&#160;million for capital expenditures. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Net cash provided by financing activities for fiscal 2023 was $18.8&#160;million. Cash provided from financing activities for fiscal 2023 includes $15.9&#160;million for borrowings under the revolving line of credit and $6.0&#160;million of proceeds from long term borrowings. Cash outflows for financing activities for fiscal 2022 include principal payments on long-term debt and the guaranteed royalty obligation of $1.0&#160;million and $2.0&#160;million, respectively. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Fiscal 2022 compared to Fiscal 2021 </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">For a comparison of our cash flow for the fiscal years ended January&#160;31, 2022 and January&#160;31, 2021, see &#8220;Part II, Item 7. Management&#8217;s Discussion and Analysis of Liquidity and Capital Resources&#8221; in our annual report on Form <span style="white-space:nowrap">10-K</span> for the fiscal year ended January&#160;31, 2022, filed with the SEC on April&#160;18, 2022. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Contractual Obligations, Commitments and Contingencies </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">As of January&#160;31, 2023, we had contractual obligations related to lease arrangements, debt and royalty obligation arrangements and purchase commitments. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">33 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The lease arrangements are for certain of our facilities at various locations worldwide. As of January&#160;31, 2023, we had fixed lease payment obligations of $0.8&#160;million, with $0.3&#160;million due within 12 months. Refer to Note 13, &#8220;Leases,&#8221; in our audited consolidated financial statements included in this Annual Report on Form <span style="white-space:nowrap">10-K</span> for further details. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Debt arrangements under our Amended Credit Agreement with Bank of America, N.A., consist of the balance due of $14.3&#160;million at January&#160;31, 2023, with $2.1&#160;million due within 12 months. For additional details regarding our long-term debt obligations, see Note&#160;8, &#8220;Debt,&#8221; in our audited consolidated financial statements included in this Annual Report on Form <span style="white-space:nowrap">10-K.</span> </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We are subject to a guaranteed minimum royalty payment obligation over the next five years pursuant to the Honeywell Agreements, which, at January&#160;31, 2023 included a balance due of $5.1&#160;million, with $1.7&#160;million due within 12 months. Refer to Note 2 &#8220;Acquisitions&#8221; and Note 12, &#8220;Royalty Obligation,&#8221; in our audited consolidated financial statements included in this Annual Report on Form <span style="white-space:nowrap">10-K</span> for further details. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In order to meet our manufacturing demands and, in some cases, lock in particular pricing structures for specific goods used in manufacturing, we enter into purchase commitments with our suppliers. At January&#160;31, 2023 our purchase commitments totaled $25.8&#160;million, with $22.8&#160;million due within 12 months, some of which are <span style="white-space:nowrap">non-cancelable.</span> </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We are also subject to contingencies, including legal proceedings and claims arising out of our business that cover a wide range of matters, such as: contract and employment claims; workers&#8217; compensation claims; product liability claims; warranty claims; and claims related to modification, adjustment or replacement of component parts of units sold. While it is impossible to ascertain the ultimate legal and financial liability with respect to contingent liabilities, including lawsuits, we believe that the aggregate amount of such liabilities, if any, in excess of amounts provided, or covered by insurance, will not have a material adverse effect on our consolidated financial position or results of operations. It is possible, however, that our results of operations for any future period could be materially affected by changes in our assumptions or strategies related to these contingencies or changes out of our control. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Critical Accounting Policies and Estimates </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our discussion and analysis of financial condition and results of operations are based upon our consolidated financial statements, which have been prepared in accordance with accounting principles generally accepted in the United States. Certain of our accounting policies require the application of judgment in selecting the appropriate assumptions for calculating financial estimates. By their nature, these judgments are subject to an inherent degree of uncertainty. We periodically evaluate the judgments and estimates used for our critical accounting policies to ensure that such judgments and estimates are reasonable for our interim and <span style="white-space:nowrap">year-end</span> reporting requirements. These judgments and estimates are based on our historical experience, current trends and information available from other sources, as appropriate. We do not believe there is a great likelihood that materially different amounts would be reported using different assumptions pertaining to the accounting policies described below, however, if actual conditions differ from the assumptions used in our judgments, our financial results could be materially different from our estimates. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We believe the following critical accounting policies require significant judgments and estimates in the preparation of our consolidated financial statements: </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Revenue Recognition</span>: We recognize revenue in accordance with Accounting Standards Codification (ASC)&#160;606, &#8220;Revenue from Contracts with Customers.&#8221; Under ASC 606, based on the nature of our contracts, we recognize most of our revenue upon shipment, which is when the performance obligation has been satisfied. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our accounting policies relating to the recognition of revenue under ASC 606 require management to make estimates, determinations and judgments based on historical experience and on various other assumptions, which </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">34 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
include (i)&#160;the existence of a contract with the customer, (ii)&#160;the identification of the performance obligations in the contract, (iii)&#160;the value of any variable consideration in the contract, (iv)&#160;the standalone selling price of multiple obligations in the contract, for the purpose of allocating the consideration in the contract, and (v)&#160;determining when a performance obligation has been met. Recognition of revenue based on incorrect judgments, including the identification of performance obligation arrangements as well as the pattern of delivery for those services, could result in inappropriate recognition of revenue, or incorrect timing of revenue recognition, which could have a material effect on our financial condition and results of operations. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We recognize revenue for <span style="white-space:nowrap">non-recurring</span> engineering (NRE) fees, as necessary, for product modification orders upon completion of agreed-upon milestones. Revenue is deferred for any amounts received prior to completion of milestones. Certain of our NRE arrangements include formal customer acceptance provisions. In such cases, we determine whether we have obtained customer acceptance for the specific milestone before recognizing revenue. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Infrequently, we receive requests from customers to hold product being purchased from us for the customers&#8217; convenience. We recognize revenue for such bill and hold arrangements in accordance with the guidance provided by ASC 606, which requires the transaction to meet the following criteria in order to determine that the customer has obtained control: (a)&#160;the reason for the bill and hold is substantive, (b)&#160;the product has separately been identified as belonging to the customer, (c)&#160;the product is currently ready for physical transfer to the customer, and (d)&#160;we do not have the ability to use the product or direct it to another customer. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Allowance for Doubtful Accounts: </span>Accounts receivable consists primarily of receivables from our customers arising from the sale of our products.&#160;We actively monitor our exposure to credit risk through the use of credit approvals and credit limits. Accounts receivable is presented net of reserves for doubtful accounts. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We estimate the collectability of our receivables and establish allowances for accounts receivable that we estimate to be uncollectible. We base these allowances on our historical collection experience, the length of time our accounts receivable are outstanding and the financial condition of individual customers. In situations where we are aware of a specific customer&#8217;s inability to meet its financial obligation, such as in the case of a bankruptcy filing, we assess the need for&#160;a specific reserve for bad debts. We believe that our procedure for estimating such amounts is reasonable and historically has not resulted in material adjustments in subsequent periods. Bad debt expense was less than 1% of net sales in each of fiscal 2023 and 2022. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Warranty Claims: </span>We offer warranties on some of our products. We establish a reserve for estimated costs of warranties at the time the product revenue is recognized. This reserve requires us to make estimates regarding the amounts necessary to settle future and existing claims using historical data on products sold as of the balance sheet date. The length of the warranty period, the product&#8217;s failure rates, and the customer&#8217;s usage affect estimated warranty cost. If actual warranty costs differ from our estimated amounts, future results of operations could be affected adversely. Warranty cost is recorded as cost of revenue, and the reserve balance recorded as an accrued expense. While we maintain product quality programs and processes, our warranty obligation is affected by product failure rates and the related corrective costs. If actual product failure rates and/or corrective costs differ from the estimates, we revise our estimated warranty liability accordingly. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Inventories: </span>Inventories are stated at the lower of average and standard cost or net realizable value. The process for evaluating and recording obsolete and excess inventory provisions consists of analyzing the inventory supply on hand and estimating the net realizable value of the inventory based on historical experience, current business conditions and anticipated future revenue. We believe that our procedures for estimating such amounts are reasonable and historically have not resulted in material adjustments in subsequent periods when the estimates are adjusted to actual experience. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Income Taxes: </span>A valuation allowance is established when it is <span style="white-space:nowrap">&#8220;more-likely-than-not&#8221;</span> that all or a portion of deferred tax assets will not be realized. A review of all available positive and negative evidence must be </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">35 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
considered, including our performance, the market environment in which we operate, length of carryforward periods, existing revenue backlog and future revenue projections. If actual factors and conditions differ materially from the estimates made by management, the actual realization of the net deferred tax assets or liabilities could vary materially from the amounts previously recorded. At January&#160;31, 2023, we had provided valuation allowances for future tax benefits resulting from certain domestic R&amp;D tax credits, foreign tax credit carryforwards, and China net operating losses, all of which are expected to expire unused. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The calculation of tax liabilities involves significant judgment in estimating the impact of uncertainties in the application of complex tax laws and regulations in a multitude of jurisdictions. Although guidance on the accounting for uncertain income taxes prescribes the use of a recognition and measurement model, the determination of whether an uncertain tax position has met those thresholds will continue to require significant judgment by management. If the ultimate resolution of tax uncertainties is different from what we have estimated, our income tax expense could be materially impacted. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Business Combinations: </span>We account for business acquisitions under the acquisition method of accounting in accordance with&#160;ASC 805, &#8216;&#8216;Business Combinations,&#8217;&#8217; where the total purchase price is allocated to the tangible and identified intangible assets acquired and liabilities assumed based on their estimated fair values. The purchase price is allocated using the information currently available, and may be adjusted, up to one year from acquisition date, after obtaining more information regarding, among other things, asset valuations, liabilities assumed and revisions to preliminary estimates that, if known, would have affected the measurement of the amounts recognized as of the acquisition date. The purchase price in excess of the fair value of the tangible and identified intangible assets acquired less liabilities assumed is recognized as goodwill. Determining the fair value of assets acquired and liabilities assumed requires management to use significant judgment and estimates, including the selection of valuation methodologies, estimates of future revenue, costs and cash flows, discount rates, and selection of comparable companies. Management&#8217;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and unpredictable. As a result, actual results may differ from these estimates. During the measurement period, we may record adjustments to acquired assets and assumed liabilities, with corresponding offsets to goodwill. Upon the conclusion of a measurement period, any subsequent adjustments are recorded to earnings. </p> <p style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Goodwill and Intangible Assets: </span>We recognize goodwill in accordance with ASC 350, <span style="font-style:italic">Intangibles&#8212;Goodwill and Other </span>(&#8220;ASC 350&#8221;). Goodwill is the excess of cost of an acquired entity over the fair value amounts assigned to assets acquired and liabilities assumed in a business combination and is not amortized.</p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Goodwill is tested for impairment at the reporting unit. A reporting unit is an operating segment or a business unit one level below an operating segment if discrete financial information for that business is prepared and regularly reviewed by segment management. However, components within an operating segment are aggregated as a single reporting unit if they have similar economic characteristics. Management evaluates the recoverability of goodwill annually or more frequently if events or changes in circumstances, such as declines in revenue, earnings or cash flows, or material adverse changes in the business climate, indicate that the carrying value of an asset might be impaired. Goodwill is first qualitatively assessed to determine whether it is more likely than not that the fair value of a reporting unit is less than its carrying value. Factors that management considers in this assessment include macroeconomic conditions, industry and market considerations, overall financial performance (both current and projected), changes in management and strategy and changes in the composition or carrying amount of net assets. If this qualitative assessment indicates that it is more likely than not that the fair value of a reporting unit is less than its carrying value, then a quantitative assessment is required for the reporting unit. The quantitative assessment compares the fair value of the reporting unit with its carrying value. If a quantitative assessment is required, we estimate the fair value of our reporting units using the income approach based upon a discounted cash flow model. We believe that this approach is appropriate because it provides a fair value estimate based upon the reporting unit&#8217;s expected long-term operating cash flow performance. In addition, we use the market approach, which compares the reporting unit to publicly traded companies and transactions involving similar business, to support the conclusions based upon the income approach. The income approach </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">36 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
requires the use of many assumptions and estimates including future revenue, expenses, capital expenditures, and working capital, as well as discount factors and income tax rates. If the fair value of the reporting unit exceeds the carrying value of the net assets including&#160;goodwill&#160;assigned to that unit,&#160;goodwill&#160;is not impaired. If the carrying value of the reporting unit&#8217;s net assets including&#160;goodwill&#160;exceeds the fair value of the reporting unit, then we record an impairment charge based on that difference. No goodwill impairment was identified for the years ended January&#160;31, 2023 or January&#160;31, 2022. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We recognize intangibles assets in accordance with ASC 350. Acquired intangible assets subject to amortization are stated at fair value and are amortized using the straight-line method over the estimated useful lives of the assets. Intangible assets that are subject to amortization are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of such assets may not be recoverable. Determination of recoverability is based on an estimate of undiscounted future cash flows resulting from the use of the asset and its eventual disposition. If the projected undiscounted cash flows are less than the carrying value, then an impairment charge would be recorded for the excess of the carrying value over the fair value, which is determined by the discounting of future cash flows. No impairment of intangible assets was identified for the years ended January&#160;31, 2023 or January&#160;31, 2022. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Share-Based Compensation: </span>Compensation expense for time-based restricted stock units is measured at the grant date and recognized ratably over the vesting period. We determine the fair value of time-based and performance-based restricted stock units based on the closing market price of our common stock on the grant date. The recognition of compensation expense associated with performance-based restricted stock units requires judgment in assessing the probability of meeting the performance goals, as well as defined criteria for assessing achievement of the performance-related goals. For purposes of measuring compensation expense, the number of shares ultimately expected to vest is estimated at each reporting date based on management&#8217;s expectations regarding the relevant performance criteria. The performance shares begin vesting only upon the achievement of the performance criteria. The achievement of the performance goals can impact the valuation and associated expense of the restricted stock units. The assumptions used in accounting for the share-based payment awards represent management&#8217;s best estimates, but these estimates involve inherent uncertainties and the application of management judgment. As a result, if circumstances change and we use different assumptions, our stock-based compensation expense could be materially different in the future. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold">Recent Accounting Pronouncements </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Reference is made to Note 1 of our audited consolidated financial statements included elsewhere in this report. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_10"><span style="font-weight:bold">Item&#160;7A. </span><span style="font-weight:bold"><span style="font-style:italic">Quantitative and Qualitative Disclosures about Market Risk</span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our primary financial market risks consist of foreign currency exchange rates risk and the impact of changes in interest rates that fluctuate with the market on our variable rate credit borrowings under our existing credit agreement. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Financial Exchange Risk </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The functional currencies of our foreign subsidiaries and branches are the local currencies&#8212;the British Pound in the U.K., the Canadian Dollar in Canada, the Danish Kroner in Denmark, the Chinese Yuan in China, and the Euro in France and Germany. We are exposed to foreign currency exchange risk as the functional currency financial statements of foreign subsidiaries are translated to U.S. dollars. The assets and liabilities of our foreign subsidiaries having a functional currency other than the U.S. dollar are translated into U.S. dollars at the exchange rate prevailing at the balance sheet date, and at an average exchange rate for the reporting period for revenue and expense accounts. The cumulative foreign currency translation adjustment is recorded as a component of accumulated other comprehensive loss in shareholders&#8217; equity. The reported results of our foreign </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">37 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">
subsidiaries will be influenced by their translation into U.S. dollars by currency movements against the U.S. dollar. Our primary currency translation exposure is related to our subsidiaries that have functional currencies denominated in Danish Kroner and the Euro. A hypothetical 10% change in the rates used to translate the results of our foreign subsidiaries would result in an increase or decrease in our consolidated net income of approximately $0.2&#160;million for the year ended January&#160;31, 2023. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Transactional exposure arises where transactions occur in currencies other than the functional currency. Transactions in foreign currencies are recorded at the exchange rate prevailing at the date of the transaction. The resulting monetary assets and liabilities are translated into the appropriate functional currency at exchange rates prevailing at the balance sheet date and the resulting gains and losses are reported as foreign exchange gain (loss) in the consolidated statements of income. Foreign exchange losses resulting from transactional exposure were $0.5&#160;million for the year ended&#160;January 31, 2023. </p> <p style="margin-top:18pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Interest Rate Risk </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">At January&#160;31, 2023, our total indebtedness included $14.25&#160;million of term loan variable-rate debt and $15.9&#160;million outstanding balance on our revolving line of credit. At January&#160;31, 2023, under the LIBOR Transition Amendment to the Amended Credit Agreement, the term loan bears interest at&#160;a BSBY (Bloomberg Short-Term Bank Yield) rate plus a margin that varies between 1.60% and 2.30% based on our consolidated leverage ratio.&#160;During fiscal 2023, the weighted average interest rate on our variable rate debt was 4.77% and the weighted average interest rate on our revolving line of credit was 6.71% The impact on our results of operations of a 100 basis point change in&#160;the interest&#160;rates&#160;on the outstanding balance of our variable-rate debt and revolving line of credit would be approximately $0.2&#160;million annually. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_11"><span style="font-weight:bold">Item&#160;8.</span><span style="font-weight:bold"><span style="font-style:italic"> Financial Statements and Supplementary Data </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The consolidated financial statements required under this item are submitted as a separate section of this report on the pages indicated at Item&#160;15(a)(1). </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_12"><span style="font-weight:bold">Item&#160;9.</span><span style="font-weight:bold"><span style="font-style:italic"> Changes in and Disagreements with Accountants on Accounting and Financial Disclosure </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">None. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_13"><span style="font-weight:bold">Item&#160;9A.</span><span style="font-weight:bold"><span style="font-style:italic"> Controls and Procedures </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Evaluation of Disclosure Controls and Procedures </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our management has evaluated, under the supervision and with the participation of our Principal Executive Officer and Principal Financial Officer, the effectiveness of our disclosure controls and procedures as of the end of the period covered by this Annual Report on Form <span style="white-space:nowrap">10-K</span> pursuant to Rules <span style="white-space:nowrap">13a-15(e)</span> and <span style="white-space:nowrap">15d-15(e)</span> under the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;). The term &#8220;disclosure controls and procedures,&#8221; as defined in Rules <span style="white-space:nowrap">13a-15(e)</span> and <span style="white-space:nowrap">15d-15(e)</span> under the Exchange Act means controls and other procedures of a company that are designed to ensure that information required to be disclosed by a company in the reports that it files or submits under the Exchange Act is recorded, processed, summarized and reported, within the time periods specified in the rules and forms promulgated by the SEC. Disclosure controls and procedures include, without limitation, controls and procedures designed to ensure that information required to be disclosed by a company in the reports that it files or submits under the Exchange Act is accumulated and communicated to the company&#8217;s management, including its principal executive and principal financial officers, as appropriate to allow timely decisions regarding required disclosure. Management recognizes that any controls and procedures, no matter how well designed and operated, can provide only reasonable assurance of achieving their objectives and management necessarily applies its judgment in evaluating the cost-benefit relationship of possible controls and procedures. Based on that evaluation, our Principal Executive Officer and our Principal Financial Officer have concluded that our disclosure controls and procedures were not effective at January&#160;31, 2023 because of the material weaknesses in our internal control over financial reporting described below. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">38 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; margin-left:2%; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Management&#8217;s Annual Report on Internal Control over Financial Reporting </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our management is responsible for establishing and maintaining adequate internal control over financial reporting (as such term is defined in Rules <span style="white-space:nowrap">13a-15(f)</span> and <span style="white-space:nowrap">15d-15(f)</span> under the Exchange Act). Our internal control over financial reporting is designed to provide reasonable assurance regarding the reliability of its financial reporting and the preparation of published financial statements in accordance with generally accepted accounting principles. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Because of the 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 risk that controls may become inadequate because of changes in conditions, or the degree of compliance may deteriorate. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Management conducted its evaluation of the effectiveness of its internal control over financial reporting as of January&#160;31, 2023. In making this assessment, management used the criteria set forth in the Internal Control-Integrated Framework (2013)&#160;issued by the Committee of Sponsoring Organizations of the Treadway Commission (&#8220;COSO&#8221;). The scope of management&#8217;s assessment of the effectiveness of its disclosure controls and procedures did not include the internal controls over financial reporting at Astro Machine, which was acquired effective August&#160;4, 2022. Our consolidated total assets as of January&#160;31, 2023 include $20.2&#160;million from Astro Machine and our consolidated revenue for the year ended January&#160;31, 2023 includes $12.5&#160;million from Astro Machine. This exclusion is consistent with the SEC Staff&#8217;s guidance that an assessment of a recently acquired business may be omitted from the scope of management&#8217;s assessment of the effectiveness of disclosure controls and procedures that are also part of internal control over financial reporting in the year of acquisition.&#160;Based on this assessment, the principal executive officer and principal financial officer believe that as of January&#160;31, 2023, our internal control over financial reporting was not effective based on criteria set forth by COSO in &#8220;Internal Control-Integrated Framework.&#8221; </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">A material weakness is a deficiency, or combination of deficiencies, in internal control over financial reporting, such that there is a reasonable possibility that a material misstatement of the Company&#8217;s annual or interim financial statements will not be prevented or detected on a timely basis. We did not maintain effective controls to properly identify and assess significant <span style="white-space:nowrap">non-routine</span> transactions and management concluded that this material weakness continued to exist as of January&#160;31, 2023. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Management is taking action to remediate this deficiency in its internal controls over financial reporting by augmenting personnel and resources in its finance and accounting organization. We anticipate that these actions and resulting improvements in controls will strengthen our internal control over financial reporting and will address the related material weakness. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The effectiveness of our internal control over financial reporting as of January 31, 2023 has been audited by Wolf &amp; Company, P.C., an independent registered public accounting firm, as stated in their report, which is included herein. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">Changes in Internal Controls over Financial Reporting </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">There have been no changes in our internal control over financial reporting during our most recently completed fiscal quarter that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_14"><span style="font-weight:bold">Item&#160;9B.</span><span style="font-weight:bold"><span style="font-style:italic"> Other Information </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">None. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_15"><span style="font-weight:bold">Item&#160;9C.</span><span style="font-weight:bold"><span style="font-style:italic"></span></span><span style="font-weight:bold"></span><span style="font-weight:bold"><span style="font-style:italic">&#160;Disclosure Regarding Foreign Jurisdictions that Prevent Inspections </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Not applicable. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">39 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold;text-align:center">PART III </p> <p style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_16"><span style="font-weight:bold">Item&#160;10.</span><span style="font-weight:bold"><span style="font-style:italic"> Directors, Executive Officers and Corporate Governance </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The information required by this item is incorporated herein by reference to our definitive proxy statement to be filed for our 2023 Annual Meeting of Shareholders, which will be filed with the SEC no later than 120 days after the end of our fiscal year (our &#8220;Proxy Statement&#8221;). Certain other information relating to our executive officers appears in Part I of this Annual Report on Form <span style="white-space:nowrap">10-K</span> under the heading &#8220;Information about our Executive Officers.&#8221; </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_17"><span style="font-weight:bold">Item&#160;11.</span><span style="font-weight:bold"><span style="font-style:italic"> Executive Compensation </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The information required by this item is incorporated herein by reference to our Proxy Statement. </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The information set forth under the heading &#8220;Compensation Committee Report&#8221; in our Proxy Statement is furnished and shall not be deemed filed for purposes of Section&#160;18 of the Exchange Act, nor be incorporated by reference in any filing under the Securities Act of 1933, as amended. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_18"><span style="font-weight:bold">Item&#160;12. </span><span style="font-weight:bold"><span style="font-style:italic">Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The information required by this item is incorporated herein by reference to our Proxy Statement. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_19"><span style="font-weight:bold">Item&#160;13. </span><span style="font-weight:bold"><span style="font-style:italic">Certain Relationships, Related Transactions and Director Independence </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The information required by this item is incorporated herein by reference to our Proxy Statement. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" id="toc415415_20"><span style="font-weight:bold">Item&#160;14. </span><span style="font-weight:bold"><span style="font-style:italic">Principal Accountant Fees and Services </span></span><span style="font-weight:bold"> </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The information required by this item is incorporated herein by reference to our Proxy Statement. </p>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">40 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold;text-align:center">PART IV </p> <p style="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold" id="toc415415_21">Item&#160;15. Exhibits and Financial Statement Schedule </p> <p style="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">(a)(1) Financial Statements: </span></p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The following documents are included as part of this Annual Report filed on Form <span style="white-space:nowrap">10-K:</span> </p> <p style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table cellspacing="0" cellpadding="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">


<tr>

<td style="width:95%"></td>

<td style="vertical-align:bottom;width:1%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"><span style="font-weight:bold">Page</span></td>
<td style="vertical-align:bottom">&#160;</td></tr>


<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#tx415415_1">Reports of Independent Registered Public Accounting Firm</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right"><span style="white-space:nowrap">F-1</span></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#tx415415_2">Consolidated Balance Sheets as of January&#160;31, 2023 and 2022</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">F-5</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#tx415415_3">Consolidated Statements of Income&#8212;Years Ended January&#160;31, 2023, 2022, and 2021</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">F-6</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#tx415415_4">Consolidated Statements of Comprehensive Income&#8212;Years Ended January&#160;31, 2023, 2022, and 2021</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">F-7</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#tx415415_5">Consolidated Statements of Changes in Shareholders&#8217; Equity&#8212;Years Ended January&#160;31, 2023, 2022, and 2021</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">F-8</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#tx415415_6">Consolidated Statements of Cash Flows&#8212;Years Ended January&#160;31, 2023, 2022, and 2021</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">F-9</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#tx415415_7">Notes to Consolidated Financial Statements</a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">F-10</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1pt">
<td style="height:12pt"></td>
<td style="height:12pt" colspan="4"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><span style="font-style:italic">(a)(2) Financial Statement Schedule:</span></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td>
<td style="vertical-align:bottom"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><a href="#tx415415_8">Schedule II&#8212;Valuation and Qualifying Accounts and Reserves&#8212;Years Ended January&#160;31, 2023, 2022, and 2021 </a></p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom" align="right">F-38</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
</table> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">All other schedules for which provision is made in the applicable accounting regulations of the Securities and Exchange Commission are not required under the related instructions or are inapplicable, and therefore, have been omitted. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold" id="toc415415_22">Item&#160;16. Form <span style="white-space:nowrap">10-K</span> Summary </p> <p style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Not Applicable. </p> <p style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><span style="font-style:italic">(a)(3) Exhibits: </span></p> <p style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table cellspacing="0" cellpadding="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">


<tr>

<td></td>

<td style="vertical-align:bottom;width:7%"></td>
<td style="width:92%"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom;white-space:nowrap"> <p style="margin-top:0pt; margin-bottom:0pt; font-size:8pt; font-family:Times New Roman;font-weight:bold">Exhibit</p> <p style="margin-top:0pt; margin-bottom:1pt; border-bottom:1.00pt solid #000000; display:table-cell; font-size:8pt; font-family:Times New Roman;font-weight:bold">Number</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>


<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(2.1)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312517114309/d313601dex21.htm">Share Purchase Agreement, dated January<span style="text-decoration:underline"></span>&#160;7, 2017, as amended, by and among ANI ApS, Trojan Holding ApS, as a Seller and as the Sellers&#8217; Representative, and Li Wei Chong filed as Exhibit 2.1 to our Annual Report on Form <span style="white-space:nowrap">10-K</span> for the year ended January<span style="text-decoration:underline"></span>&#160;31, 2017 and incorporated by reference herein* </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(3A)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312516613905/d171895dex3a.htm">Restated Articles of Incorporation of the Company and all amendments thereto filed as Exhibit 3A to our Quarterly Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-Q</span> for the quarter ended April<span style="text-decoration:underline"></span>&#160;30, 2016 and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(3B)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312508124748/dex3b.htm"><span style="white-space:nowrap">By-laws</span> of the Company as amended to date filed as Exhibit 3B to our Annual Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-K</span> for the fiscal year ended January<span style="text-decoration:underline"></span>&#160;31, 2008 (File No.<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;000-13200)</span> and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(4.1)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312516613905/d171895dex41.htm">Specimen form of common stock certificate of the Company filed as Exhibit 4 to our Quarterly Report on Form <span style="white-space:nowrap">10-Q</span> for the quarter ended April<span style="text-decoration:underline"></span>&#160;30, 2016 and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(4.2)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312520103834/d816550dex42.htm">Description of securities registered pursuant to Section<span style="text-decoration:underline"></span>&#160;12 of the Exchange Act filed as Exhibit 4.2 to our Annual Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-K</span> for the fiscal year ended January<span style="text-decoration:underline"></span>&#160;31, 2020 (File No.<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;000-13200)</span> and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.1)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312507089841/ddef14a.htm"><span style="white-space:nowrap">Astro-Med,</span> Inc. 2007 Equity Incentive Plan as filed as Appendix A to the Definitive Proxy Statement filed on April<span style="text-decoration:underline"></span>&#160;25, 2007 on Schedule<span style="text-decoration:underline"></span>&#160;14A (File No.<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;000-13200)</span> for the 2007 annual shareholders meeting and incorporated by reference herein.** </a></td></tr></table>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">41 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">

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


<tr>

<td></td>

<td style="vertical-align:bottom;width:4%"></td>
<td style="width:90%"></td></tr>

<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom;white-space:nowrap"> <p style="margin-top:0pt; margin-bottom:0pt; font-size:8pt; font-family:Times New Roman;font-weight:bold">Exhibit</p> <p style="margin-top:0pt; margin-bottom:1pt; border-bottom:1.00pt solid #000000; display:table-cell; font-size:8pt; font-family:Times New Roman;font-weight:bold">Number</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>


<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.2)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312515122389/d846754dex1013.htm">Change in Control Agreement dated as of November<span style="text-decoration:underline"></span>&#160;24, 2014 by and between the Company and Gregory A. Woods filed as Exhibit 10.13 to our Annual Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-K</span> for the year ended January<span style="text-decoration:underline"></span>&#160;31, 2015 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.3)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312515138485/d874878ddef14a.htm">AstroNova Inc. 2015 Equity Incentive Plan filed as Exhibit<span style="text-decoration:underline"></span>&#160;A to the Definitive Proxy Statement filed on April<span style="text-decoration:underline"></span>&#160;21, 2015 (File No.<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;000-13200)</span> for the 2015 annual shareholders meeting and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.4)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312515401329/d14196dex101.htm">Form of Indemnification Agreement for directors and officers filed as Exhibit<span style="text-decoration:underline"></span>&#160;10.1 to our Quarterly Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-Q</span> for the period ended October<span style="text-decoration:underline"></span>&#160;31, 2015 and incorporated by reference herein.**</a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.5)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312516708330/d218619dex102.htm">Form of Restricted Stock Agreement granted under the Amended and Restated<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;Non-Employee</span> Director Annual Compensation Program filed as Exhibit 10.2 to the Company&#8217;s Quarterly Report on Form <span style="white-space:nowrap">10-Q</span> for the period ended July<span style="text-decoration:underline"></span>&#160;30, 2016 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.6)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312516708330/d218619dex103.htm">Form of Incentive Stock Option Agreement granted under the 2015 Equity Incentive Plan filed as Exhibit 10.3 to the Company&#8217;s Quarterly Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-Q</span> for the period ended July<span style="text-decoration:underline"></span>&#160;30, 2016 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.7)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312516708330/d218619dex104.htm">Form of <span style="white-space:nowrap">Non-Statutory</span> Stock Option Agreement granted under the 2015 Equity Incentive Plan filed as Exhibit 10.4 to the Company&#8217;s Quarterly Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-Q</span> for the period ended July<span style="text-decoration:underline"></span>&#160;30, 2016 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.8)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312516708330/d218619dex105.htm">Form of <span style="white-space:nowrap">Non-Employee</span> Director <span style="white-space:nowrap">Non-Statutory</span> Stock Option Agreement granted under the 2015 Equity Incentive Plan filed as Exhibit<span style="text-decoration:underline"></span>&#160;10.5 to the Company&#8217;s Quarterly Report on Form <span style="white-space:nowrap">10-Q</span> for the period ended July<span style="text-decoration:underline"></span>&#160;30, 2016 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.9)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312516708330/d218619dex106.htm">Form of Restricted Stock Agreement granted under the 2015 Equity Incentive Plan filed as Exhibit&#160;10.6 to the Company&#8217;s Quarterly Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-Q</span> for the period ended July<span style="text-decoration:underline"></span>&#160;30, 2016 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.10)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312516708330/d218619dex107.htm">Form of <span style="white-space:nowrap">Non-Employee</span> Director Restricted Stock Agreement granted under the 2015 Equity Incentive Plan filed as Exhibit<span style="text-decoration:underline"></span>&#160;10.7 to the Company&#8217;s Quarterly Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-Q</span> for the period ended July<span style="text-decoration:underline"></span>&#160;30, 2016 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.11)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312516708330/d218619dex108.htm">Form of Time-Based Restricted Stock Unit Agreement granted under the 2015 Equity Incentive Plan filed as Exhibit 10.8 to the Company&#8217;s Quarterly Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-Q</span> for the period ended July<span style="text-decoration:underline"></span>&#160;30, 2016 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.12)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312516708330/d218619dex109.htm">Form of Performance Restricted Stock Unit Agreement granted under the 2015 Equity Incentive Plan filed as Exhibit 10.9 to the Company&#8217;s Quarterly Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-Q</span> for the period ended July<span style="text-decoration:underline"></span>&#160;30, 2016 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.13)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312517303507/d443813dex101.htm">Asset Purchase and License Agreement, dated September<span style="text-decoration:underline"></span>&#160;28, 2017, by and between AstroNova, Inc. and Honeywell International, Inc. filed as Exhibit 10.1 to the Company&#8217;s Current Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;8-K,</span> event date September<span style="text-decoration:underline"></span>&#160;28, 2017, filed with the SEC on October<span style="text-decoration:underline"></span>&#160;4, 2017 and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.14)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312518182806/d597940dex101.htm">Form of Performance-based Restricted Stock Unit Award Agreement filed as Exhibit 10.1 to the Company&#8217;s Current Report on Form <span style="white-space:nowrap">8-K,</span> event date June<span style="text-decoration:underline"></span>&#160;4, 2018, filed with the SEC on June<span style="text-decoration:underline"></span>&#160;4, 2018 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.15)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312518182806/d597940dex102.htm">Form of Restricted Stock Unit Agreement (time-based vesting) filed as Exhibit 10.2 to the Company&#8217;s Current Report on Form <span style="white-space:nowrap">8-K,</span> event date June<span style="text-decoration:underline"></span>&#160;4, 2018, filed with the SEC on June<span style="text-decoration:underline"></span>&#160;4, 2018 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.16)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312518182806/d597940dex103.htm">Form of Incentive Stock Option filed as Exhibit 10.3 to the Company&#8217;s Current Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;8-K,</span> event date June<span style="text-decoration:underline"></span>&#160;4, 2018, filed with the SEC on June<span style="text-decoration:underline"></span>&#160;4, 2018 and incorporated by reference herein.** </a></td></tr></table>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">42 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">

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


<tr>

<td></td>

<td style="vertical-align:bottom;width:4%"></td>
<td style="width:90%"></td></tr>

<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom;white-space:nowrap"> <p style="margin-top:0pt; margin-bottom:0pt; font-size:8pt; font-family:Times New Roman;font-weight:bold">Exhibit</p> <p style="margin-top:0pt; margin-bottom:1pt; border-bottom:1.00pt solid #000000; display:table-cell; font-size:8pt; font-family:Times New Roman;font-weight:bold">Number</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>


<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.17)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312518182806/d597940dex104.htm">Form of <span style="white-space:nowrap">Non-statutory</span> Stock Option filed as Exhibit 10.4 to the Company&#8217;s Current Report on Form&#160;<span style="text-decoration:underline"></span><span style="white-space:nowrap">8-K,</span> event date June<span style="text-decoration:underline"></span>&#160;4, 2018, filed with the SEC on June<span style="text-decoration:underline"></span>&#160;4, 2018 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.18)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312518182806/d597940dex105.htm">Form of <span style="white-space:nowrap">Non-statutory</span> Stock Option <span style="white-space:nowrap">(Non-employee</span> Director) filed as Exhibit 10.5 to the Company&#8217;s Current Report on Form <span style="white-space:nowrap">8-K,</span> event date June<span style="text-decoration:underline"></span>&#160;4, 2018, filed with the SEC on June<span style="text-decoration:underline"></span>&#160;4, 2018 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.19)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312518182806/d597940dex106.htm">Form of Restricted Stock Agreement filed as Exhibit 10.6 to the Company&#8217;s Current Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;8-K,</span> event date June<span style="text-decoration:underline"></span>&#160;4, 2018, filed with the SEC on June<span style="text-decoration:underline"></span>&#160;4, 2018 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.20)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312518182806/d597940dex107.htm">Form of <span style="white-space:nowrap">Non-employee</span> Director Restricted Stock Agreement filed as Exhibit 10.7 to the Company&#8217;s Current Report on Form <span style="white-space:nowrap">8-K</span> , event date June<span style="text-decoration:underline"></span>&#160;4, 2018, filed with the SEC on June<span style="text-decoration:underline"></span>&#160;4, 2018 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.21)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312519027077/d684337dex101.htm">AstroNova, Inc. Amended and Restated <span style="white-space:nowrap">Non-Employee</span> Director Annual Compensation Program filed as Exhibit 10.1 to the Company&#8217;s Current Report on Form <span style="white-space:nowrap">8-K,</span> event date January<span style="text-decoration:underline"></span>&#160;31, 2019, filed with the SEC on February<span style="text-decoration:underline"></span>&#160;4, 2019 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.22)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312519102788/d662203dex1041.htm">AstroNova, Inc. 2018 Equity Incentive Plan <span style="white-space:nowrap">Non-Employee</span> Director Restricted Stock Agreement filed as Exhibit 10.41 to the Company&#8217;s Annual Report on Form <span style="white-space:nowrap">10-K</span> for the fiscal year ended January<span style="text-decoration:underline"></span>&#160;31, 2019 and incorporated by reference herein.* </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.23)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312519118219/d664700ddef14a.htm">AstroNova, Inc. 2018 Equity Incentive Plan, as amended, filed as Appendix A to the Company&#8217;s Definitive Proxy Statement filed with the SEC on May<span style="text-decoration:underline"></span>&#160;25, 2019 on Schedule 14A and incorporated by reference herein.* </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.24)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312520242198/d97585dex104.htm">Amended and Restated Credit Agreement dated as of July<span style="text-decoration:underline"></span>&#160;30, 2020 among AstroNova, Inc., ANI ApS, TrojanLabel ApS, and Bank of America, N.A. filed as Exhibit 10.4 to the Company&#8217;s Quarterly Report on Form <span style="white-space:nowrap">10-Q</span> for the quarter ended August<span style="text-decoration:underline"></span>&#160;1, 2020 and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.25)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312520210639/d29798dex102.htm">Amended and Restated Security and Pledge Agreement dated as of July<span style="text-decoration:underline"></span>&#160;30, 2020 among AstroNova, Inc. and Bank of America, N.A., filed as Exhibit 10.2 to the Company&#8217;s Current Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;8-K,</span> event date July<span style="text-decoration:underline"></span>&#160;30, 2020, filed with the SEC on August<span style="text-decoration:underline"></span>&#160;5, 2020 and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.26)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312520210639/d29798dex103.htm"><span style="white-space:nowrap">Open-End</span> Mortgage Deed to Secure Present and Future Loans under Chapter 25 of Title 34 of the Rhode Island General Laws, Assignment of Leases and Rents, Security Agreement and Fixture Filing dated as of July<span style="text-decoration:underline"></span>&#160;30, 2020 among AstroNova, Inc. and Bank of America, N.A., filed as Exhibit 10.3 to the Company&#8217;s Current Report on Form <span style="white-space:nowrap">8-K,</span> event date July<span style="text-decoration:underline"></span>&#160;30, 2020, filed with the SEC on August<span style="text-decoration:underline"></span>&#160;5, 2020 and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.27)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312520242198/d97585dex107.htm">Change in Control Agreement dated September<span style="text-decoration:underline"></span>&#160;8, 2020 by and between AstroNova, Inc. and David&#160;S. Smith filed as Exhibit 10.7 to the Company&#8217;s Quarterly Report on Form <span style="white-space:nowrap">10-Q</span> for the quarter ended August<span style="text-decoration:underline"></span>&#160;1, 2020 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.28)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312521114283/d56468dex1034.htm">First Amendment to Credit Agreement dated as of March<span style="text-decoration:underline"></span>&#160;24, 2021 among AstroNova, Inc. ANI<span style="text-decoration:underline"></span>&#160;ApS, TrojanLabel ApS and Bank of America, N.A., filed as Exhibit 10.34 to the Company&#8217;s Annual Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-K</span> for the period ended January<span style="text-decoration:underline"></span>&#160;31, 2021, and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(10.29)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312521114283/d56468dex1035.htm">First Amendment to <span style="white-space:nowrap">Open-End</span> Mortgage Deed to Secure Present and Future Loans under Chapter<span style="text-decoration:underline"></span>&#160;25 of Title 34 of the Rhode Island General Laws, Assignment of Leases and Rents, Security Agreement and Fixture Filing dated as of March<span style="text-decoration:underline"></span>&#160;24, 2021 among AstroNova, Inc. and Bank of America, N.A., filed as Exhibit 10.35 to the Company&#8217;s Annual Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-K</span> for the period ended January<span style="text-decoration:underline"></span>&#160;31, 2021, and incorporated by reference herein. </a></td></tr></table>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">43 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">

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


<tr>

<td></td>

<td style="vertical-align:bottom;width:6%"></td>
<td style="width:90%"></td></tr>

<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom;white-space:nowrap"> <p style="margin-top:0pt; margin-bottom:0pt; font-size:8pt; font-family:Times New Roman;font-weight:bold">Exhibit</p> <p style="margin-top:0pt; margin-bottom:1pt; border-bottom:1.00pt solid #000000; display:table-cell; font-size:8pt; font-family:Times New Roman;font-weight:bold">Number</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>


<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(10.30)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312521352218/d236000dex101.htm">Form of Indemnification Agreement for directors and officers, filed as Exhibit 10.1 to the Company&#8217;s Quarterly Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-Q</span> for the period ended October<span style="text-decoration:underline"></span>&#160;30, 2021, and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(10.31)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312522108120/d234033dex1033.htm">LIBOR Transition Amendment dated as of December<span style="text-decoration:underline"></span>&#160;14, 2021 among AstroNova, Inc. and Bank of America, N.A., filed as Exhibit 10.33 to the Company&#8217;s Annual Report on Form<span style="text-decoration:underline"></span><span style="white-space:nowrap">&#160;10-K</span> for the period ended January<span style="text-decoration:underline"></span>&#160;31, 2022, and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(10.32)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312522131320/d226783ddef14a.htm">AstroNova, Inc. 2022 Employee Stock Purchase Plan, filed as Annex A to the AstroNova, Inc. Definitive Proxy Statement on Schedule 14A filed with the SEC on April<span style="text-decoration:underline"></span>&#160;29, 2022 and incorporated by reference herein.** </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(10.33)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312522215642/d313776dex101.htm">Equity Interest Purchase Agreement, dated as of August 4, 2022, by and among AstroNova, Inc., Astro Machine LLC and GSND Holding Corporation, filed as Exhibit 10.1 to the Company&#8217;s Current Report on Form <span style="white-space:nowrap">8-K,</span> event date August 4, 2022, filed with the SEC on August 9, 2022 and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(10.34)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312522215642/d313776dex102.htm">Purchase and Sale Agreement, dated as of August 4, 2022, between Astro Machine LLC and Selak Real Estate Limited Partnership, filed as Exhibit 10.2 to the Company&#8217;s Current Report on Form <span style="white-space:nowrap">8-K,</span> event date August 4, 2022, filed with the SEC on August 9, 2022 and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(10.35)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="http://www.sec.gov/Archives/edgar/data/8146/000119312522215642/d313776dex103.htm">Second Amendment to Amended and Restated Credit Agreement, dated as of August 4, 2022, by and among AstroNova, Inc. and Bank of America, N.A. , filed as Exhibit 10.3 to the Company&#8217;s Current Report on Form <span style="white-space:nowrap">8-K,</span> event date August 4, 2022, filed with the SEC on August 9, 2022 and incorporated by reference herein. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(21)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="d415415dex21.htm">List of Subsidiaries of the Company. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(23.1)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="d415415dex231.htm">Consent of Wolf<span style="text-decoration:underline"></span>&#160;&amp; Company, P.C. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(31.1)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="d415415dex311.htm">Certification of Chief Executive Officer Pursuant to Section<span style="text-decoration:underline"></span>&#160;302 of the Sarbanes-Oxley Act of 2002. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(31.2)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="d415415dex312.htm">Certification of Chief Financial Officer Pursuant to Section<span style="text-decoration:underline"></span>&#160;302 of the Sarbanes-Oxley Act of 2002. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(32.1)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="d415415dex321.htm">Certification of Chief Executive Officer Pursuant to 18<span style="text-decoration:underline"></span>&#160;U.S.C. Section<span style="text-decoration:underline"></span>&#160;1350, as adopted pursuant to Section<span style="text-decoration:underline"></span>&#160;906 of the Sarbanes-Oxley Act of 2002. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">&#160;&#160;(32.2)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"><a href="d415415dex322.htm">Certification of Chief Financial Officer Pursuant to 18<span style="text-decoration:underline"></span>&#160;U.S.C. Section<span style="text-decoration:underline"></span>&#160;1350, as adopted pursuant to Section<span style="text-decoration:underline"></span>&#160;906 of the Sarbanes-Oxley Act of 2002. </a></td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(101.INS)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top">XBRL Instance Document&#8212;the instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document</td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(101.SCH)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top">Inline XBRL Taxonomy Extension Schema Document</td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(101.CAL)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top">Inline XBRL Taxonomy Extension Calculation Linkbase Document</td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(101.DEF)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top">Inline XBRL Taxonomy Extension Definition Linkbase Document</td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(101.LAB)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top">Inline XBRL Taxonomy Extension Label Linkbase Document</td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(101.PRE)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top">Inline XBRL Taxonomy Extension Presentation Linkbase Document</td></tr>
<tr style="font-size:1pt">
<td style="height:6pt"></td>
<td style="height:6pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top;white-space:nowrap">(104)</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top">Cover Page Interactive Data File (embedded within the Inline XBRL document).</td></tr>
</table> <p style="line-height:8.0pt;margin-top:0pt;margin-bottom:2pt;border-bottom:1px solid #000000;width:11%">&#160;</p>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:4%;vertical-align:top" align="left">*</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:left">Schedules to this Exhibit have been omitted in reliance on Item 601(b)(2) of Regulation <span style="white-space:nowrap">S-K.</span> The Company will furnish copies of any such schedules to the SEC upon request. </p></td></tr></table>
<table style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%" cellpadding="0" cellspacing="0">
<tr style="page-break-inside:avoid">
<td style="width:4%;vertical-align:top" align="left">**</td>
<td align="left" style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:left">Management contract or compensatory plan or arrangement. </p></td></tr></table>
 <p style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</p> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">44 </p>

</div></div>



<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />


<div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto">
 <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;font-weight:bold;text-align:center">SIGNATURES </p> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman;font-weight:bold">Pursuant to the requirements of Section&#160;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="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table cellspacing="0" cellpadding="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0">


<tr>

<td style="width:45%"></td>

<td style="vertical-align:bottom;width:1%"></td>
<td style="width:5%"></td>

<td style="vertical-align:bottom"></td>
<td style="width:3%"></td>

<td style="vertical-align:bottom;width:1%"></td>
<td style="width:44%"></td></tr>


<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top" colspan="3"> <p style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">ASTRONOVA, INC.</p> <p style="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman">(Registrant)</p></td></tr>
<tr style="font-size:1pt">
<td style="height:12pt"></td>
<td style="height:12pt" colspan="2"></td>
<td style="height:12pt" colspan="2"></td>
<td style="height:12pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">Date: April&#160;17, 2023</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top">By:</td>
<td style=" BORDER-BOTTOM:0.75pt solid #000000;vertical-align:bottom">&#160;</td>
<td align="center" style="BORDER-BOTTOM:0.75pt solid #000000;vertical-align:top">/S/&#160;&#160;&#160;&#160;G<small>REGORY</small> A. W<small>OODS</small></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top"></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top" align="center">(Gregory A. Woods, Chief Executive Officer)</td></tr>
</table> <p style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman;font-weight:bold">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 date indicated. </p> <p style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</p>
<table cellspacing="0" cellpadding="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0">


<tr>

<td style="width:35%"></td>

<td style="vertical-align:bottom;width:1%"></td>
<td style="width:43%"></td>

<td style="vertical-align:bottom;width:2%"></td>
<td style="width:18%"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">Name</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">Title</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td align="center" style="border-bottom:1.00pt solid #000000;vertical-align:bottom"> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">Date</p></td></tr>


<tr style="font-size:1pt">
<td style="height:12pt"></td>
<td style="height:12pt" colspan="2"></td>
<td style="height:12pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:top"> <p style="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman;text-align:center">/<small>S</small>/&#160;&#160;&#160;&#160;G<small>REGORY</small> A. W<small>OODS</small></p> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">Gregory A. Woods</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">President, Chief Executive Officer and Director (Principal Executive Officer)</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top;white-space:nowrap" align="center"><span style="font-size:10pt">April&#160;17, 2023</span></td></tr>
<tr style="font-size:1pt">
<td style="height:12pt"></td>
<td style="height:12pt" colspan="2"></td>
<td style="height:12pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:top"> <p style="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman;text-align:center">/<small>S</small>/&#160;&#160;&#160;&#160;D<small>AVID</small> S. S<small>MITH</small></p> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">David S. Smith</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Vice President, Chief Financial Officer and Treasurer (Principal Accounting and Financial Officer)</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top;white-space:nowrap" align="center"><span style="font-size:10pt">April&#160;17, 2023</span></td></tr>
<tr style="font-size:1pt">
<td style="height:12pt"></td>
<td style="height:12pt" colspan="2"></td>
<td style="height:12pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:top"> <p style="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman;text-align:center">/s/&#160;&#160;&#160;&#160;Alex P. Michas</p> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">Alexis P. Michas</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Director</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top;white-space:nowrap" align="center"><span style="font-size:10pt">April&#160;17, 2023</span></td></tr>
<tr style="font-size:1pt">
<td style="height:12pt"></td>
<td style="height:12pt" colspan="2"></td>
<td style="height:12pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:top"> <p style="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman;text-align:center">/<small>S</small>/&#160;&#160;&#160;&#160;M<small>ITCHELL</small> I. Q<small>UAIN</small></p> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">Mitchell I. Quain</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Director</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top;white-space:nowrap" align="center"><span style="font-size:10pt">April&#160;17, 2023</span></td></tr>
<tr style="font-size:1pt">
<td style="height:12pt"></td>
<td style="height:12pt" colspan="2"></td>
<td style="height:12pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:top"> <p style="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman;text-align:center">/<small>S</small>/&#160;&#160;&#160;&#160;Y<small>VONNE</small> E. S<small>CHLAEPPI</small></p> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">Yvonne E. Schlaeppi</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Director</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top;white-space:nowrap" align="center"><span style="font-size:10pt">April&#160;17, 2023</span></td></tr>
<tr style="font-size:1pt">
<td style="height:12pt"></td>
<td style="height:12pt" colspan="2"></td>
<td style="height:12pt" colspan="2"></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:top"> <p style="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman;text-align:center">/<small>S</small>/&#160;&#160;&#160;&#160;R<small>ICHARD</small> S. W<small>ARZALA</small></p> <p style="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman;font-weight:bold;text-align:center">Richard S. Warzala</p></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:top"> <p style=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Director</p></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:top;white-space:nowrap" align="center"><span style="font-size:10pt">April&#160;17, 2023</span></td></tr>
</table>
</div></div>


<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<hr style="color:#999999;height:3px;width:100%" />
 <div style='display: none'><ix:header><ix:hidden><ix:nonNumeric name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="hidden75771655" contextRef="PAsOn01_31_2023">http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent</ix:nonNumeric><ix:nonNumeric name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="hidden75771656" contextRef="PAsOn01_31_2022">http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:type="simple" xlink:href="alot-20230131.xsd" /><link:linkbaseRef xlink:type="simple" xlink:href="alot-20230131_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" /><link:linkbaseRef xlink:type="simple" xlink:href="alot-20230131_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" /><link:linkbaseRef xlink:type="simple" xlink:href="alot-20230131_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" /><link:linkbaseRef xlink:type="simple" xlink:href="alot-20230131_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" /></ix:references></ix:header></div><div style="text-align: center;"><div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><div id="tx415415_1" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM </div></div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Shareholders and Board of Directors of </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">AstroNova, Inc. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">Opinion on the Financial Statements </div></div></div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We have audited the accompanying consolidated balance sheets of AstroNova, Inc. (the &#8220;Company&#8221;) as of January&#160;31, 2023 and 2022, and the related consolidated statements of income, comprehensive income, changes in shareholders&#8217; equity and cash flows for each of the years in the three-year period ended January&#160;31, 2023, and the related notes and the financial statement schedule listed in Item 15(a)(2) (collectively, the &#8220;financial statements&#8221;). In our opinion, the financial statements present fairly, in all material respects, the financial position of the Company as of January&#160;31, 2023 and 2022, and the results of its operations and its cash flows for each of the three years in the period ended January&#160;31, 2023, in conformity with accounting principles generally accepted in the United States of America. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">We have also audited, in accordance with the standards of the Public Company&#160;Accounting Oversight Board (United States) (PCAOB), the Company&#8217;s internal control over financial reporting as of January&#160;31, 2023, based on criteria established in <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Internal Control&#8212;Integrated Framework</div></div> issued by the Committee of Sponsoring Organizations of the Treadway Commission in 2013. Our report dated April&#160;17, 2023 expressed an opinion that the Company had not maintained effective internal control over financial reporting as of January&#160;31, 2023, based on criteria established in <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Internal Control&#8212;Integrated Framework</div></div> issued by the Committee of Sponsoring Organizations of the Treadway Commission in 2013. </div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">Basis for Opinion </div></div></div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">These financial statements are the responsibility of the Company&#8217;s management. Our responsibility is to express an opinion on the Company&#8217;s financial statements based on our audits. We are a public accounting firm registered with the PCAOB and are required to be independent with respect to the Company in accordance with U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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. Our audits 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 financial statements. We believe that our audits provide a reasonable basis for our opinion. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">Critical Audit Matters </div></div></div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The critical audit matters communicated below 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)&#160;relate to accounts or disclosures that are material to the financial statements and (2)&#160;involved our especially challenging, subjective or complex judgments. The communication of critical audit matters does not alter in any way our opinion on the financial statements, taken as a whole, and we are not, by communicating the critical audit matters below, providing separate opinions on the critical audit matters or on the accounts or disclosures to which they relate. </div></div><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">F-1 </div></div></div></div><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div><div style="text-align: center;"><div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">Valuation of Intangible Assets in the Astro Machine Acquisition </div></div></div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">As described in Note 2 to the consolidated financial statements, the Company completed an acquisition of Astro Machine for consideration of $17.1&#160;million in the year ended January&#160;31, 2023. The Company accounted for this acquisition as a business combination. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Auditing the accounting for the acquisition was complex due to the significant estimation uncertainty in determining the fair values of identified assets, including the customer relationship intangible asset of $3.06&#160;million. The significant estimation uncertainty was primarily due to the sensitivity of the respective fair values to underlying assumptions about future performance of the acquired business and due to the limited historical data on which to base these assumptions. The significant assumptions used to form the basis of the forecasted results included customer attrition rates and forecasted revenues and expenditures. These significant assumptions were forward-looking and could be affected by future economic and market conditions. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Addressing the matter involved performing procedures and evaluating audit evidence in connection with forming our overall opinion on the financial statements. These procedures included, among others (i)&#160;obtaining an understanding of management&#8217;s process for accounting for the transaction; (ii)&#160;evaluating the qualifications of the third-party expert engaged by management; (iii)&#160;testing management&#8217;s, and the third-party expert&#8217;s, process for developing the valuation models, and (iv)&#160;evaluating the significant assumptions used in developing the valuation models. In evaluating management&#8217;s assumptions used in the development of the valuation models we considered (i)&#160;whether these assumptions were consistent with evidence obtained in other areas of the audit and (ii)&#160;the sensitivity to change of the assumptions used. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">/s/ Wolf&#160;&amp; Company, P.C. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We have served as the Company&#8217;s auditor since 2013. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Boston, Massachusetts </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">April&#160;17, 2023 </div></div><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">F-2 </div></div></div></div><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div><div style="text-align: center;"><div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM </div></div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Shareholders and Board of Directors of </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">AstroNova, Inc. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">Opinion on the Internal Control Over</div></div></div><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; background: none; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="text-decoration: none; background: none; letter-spacing: 0px; top: 0px;;display:inline;"> </div></div></div></div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">Financial Reporting </div></div></div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">We have audited AstroNova, Inc.&#8217;s (the Company) internal control over financial reporting as of January&#160;31, 2023, based on criteria established in <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Internal Control&#8212;Integrated Framework</div></div> issued by the Committee of Sponsoring Organizations of the Treadway Commission in 2013. In our opinion, because of the effect of the material weakness described below on the achievement of the objectives of the control criteria, the Company has not maintained effective internal control over financial reporting as of January&#160;31, 2023, based on criteria established in <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Internal Control&#8212;Integrated Framework</div></div> issued by the Committee of Sponsoring Organizations of the Treadway Commission in 2013. </div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We have also audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the consolidated financial statements of the Company and our report dated April&#160;17, 2023 expressed an unqualified opinion. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">As described in Management&#8217;s Annual Report on Internal Control over Financial Reporting, management has excluded Astro Machine from its assessment of internal control over financial reporting as of January&#160;31, 2023, because it was acquired by the Company in a purchase business combination in the third quarter of fiscal 2023. We have also excluded Astro Machine from our audit of internal control over financial reporting. Astro Machine is a wholly owned subsidiary whose total assets and revenues represent approximately 15% and 9%, respectively, of the related consolidated financial statement amounts as of and for the year ended January&#160;31, 2023. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">A material weakness is a deficiency, or a combination of deficiencies, in internal control over financial reporting, such that there is a reasonable possibility that a material misstatement of the company&#8217;s annual or interim financial statements will not be prevented or detected on a timely basis. The following material weakness has been identified and included in management&#8217;s assessment. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">The Company&#8217;s controls over the accounting for significant <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-routine</div> transactions include management&#8217;s review of the transaction to ensure the appropriate accounting treatment in accordance with accounting principles generally accepted in the United States of America. During the year ended January&#160;31, 2023, for certain significant <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-routine</div> transactions, this control did not operate effectively. </div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">This material weakness was considered in determining the nature, timing and extent of audit tests applied in our audit of the 2023 financial statements, and this report does not affect our report dated April&#160;17, 2023 on those financial statements. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">Basis for Opinion </div></div></div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s management is responsible for maintaining effective internal control over financial reporting and for its assessment of the effectiveness of internal control over financial reporting in the accompanying Management&#8217;s Annual Report on Internal Control over Financial Reporting. Our responsibility is to express an opinion on the Company&#8217;s internal control over financial reporting based on our audit. We are a public accounting firm registered with the PCAOB and are required to be independent with respect to the Company in accordance with U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We conducted our audit in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether effective internal control over financial </div></div><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">F-3 </div></div></div></div><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div><div style="text-align: center;"><div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">reporting was maintained in all material respects. Our audit 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 audit also included performing such other procedures as we considered necessary in the circumstances. We believe that our audit provides a reasonable basis for our opinion. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">Definition and Limitations of Internal Control Over Financial Reporting </div></div></div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">A company&#8217;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&#8217;s internal control over financial reporting includes those policies and procedures that (1)&#160;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)&#160;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)&#160;provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use or disposition of the company&#8217;s assets that could have a material effect on the financial statements. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">/s/ Wolf&#160;&amp; Company, P.C. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We have served as the Company&#8217;s auditor since 2013. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Boston, Massachusetts </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">April&#160;17, 2023 </div></div><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">F-4 </div></div></div></div><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc" style="null;text-indent: 0px;">Table of Contents</a></div> <div> <div style="background-color:white;display: inline;"> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"> <div id="tx415415_2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">ASTRONOVA, INC. </div></div></div></div> <div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">CONSOLIDATED BALANCE SHEETS </div></div></div></div> <div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">As of January&#160;31 </div></div></div></div> <div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">(In Thousands, Except Share Data) </div></div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 9pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 84%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 9pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;;text-align:center;"> <div style="text-align: center; text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">ASSETS</div></div></div></div> </td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 9pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">CURRENT ASSETS</div></div></div> </td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash and Cash Equivalents</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">$</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,946</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">$</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,276</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 9pt; font-family: &quot;Times New Roman&quot;; line-height: 10pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;">Accounts Receivable, net of reserves of $</div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">731</ix:nonFraction></div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"> in 2023</div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"> and $</div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">826</ix:nonFraction></div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> in 2022</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">21,598</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,124</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventories</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">51,324</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">34,609</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Employee Retention Credit Receivable</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:ErcReceivables" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:ErcReceivables" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,135</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Prepaid Expenses and Other Current Assets</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,894</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,634</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 84%;">&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; width: 1%;"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Total Current Assets</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AssetsCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">79,762</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AssetsCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">63,778</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Property, Plant and Equipment, net</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,288</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,441</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Identifiable Intangibles, net</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">21,232</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,200</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,658</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,156</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred Tax Assets, net</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,907</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,591</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Right of Use Asset</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">794</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,094</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Other Assets</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:OtherAssetsMiscellaneousNoncurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,566</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:OtherAssetsMiscellaneousNoncurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,695</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 84%;">&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; width: 1%;"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">TOTAL ASSETS</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">$</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:Assets" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">139,207</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">$</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:Assets" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">114,955</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 84%;">&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; width: 1%;"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;text-align:center;"> <div style="text-align: center; text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">LIABILITIES AND SHAREHOLDERS&#8217; EQUITY</div></div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td colspan="2" style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td colspan="2" style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">CURRENT LIABILITIES</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts Payable</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">$</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,618</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">$</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,590</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued Compensation</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:EmployeeRelatedLiabilitiesCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,750</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:EmployeeRelatedLiabilitiesCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,512</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Other Accrued Expenses</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,308</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,113</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Revolving Line of Credit</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:LinesOfCreditCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">15,900</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:LinesOfCreditCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Current Portion of Long-Term Debt</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:LongTermDebtCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,100</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:LongTermDebtCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,000</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Current Liability&#8212;Royalty Obligation</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:RoyaltyObligationCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,725</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:RoyaltyObligationCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,000</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Current Liability&#8212;Excess Royalty Payment Due</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">423</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">235</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Income Taxes Payable</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedIncomeTaxesCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">786</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedIncomeTaxesCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">323</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred Revenue</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredRevenueCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,888</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredRevenueCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">262</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 84%;">&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; width: 1%;"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Total Current Liabilities</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">37,498</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">20,035</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">NON-CURRENT</div> LIABILITIES</div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Long-Term Debt, net of current portion</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,040</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,154</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Royalty Obligation, net of current portion</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:RoyaltyObligationNonCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,415</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:RoyaltyObligationNonCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,361</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Lease Liabilities, net of current portion</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">555</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">808</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Income Taxes Payable</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:TaxesPayableCurrentAndNoncurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">491</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:TaxesPayableCurrentAndNoncurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">399</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred Revenue</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredRevenueNoncurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">674</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredRevenueNoncurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred Tax Liabilities</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilitiesNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">167</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilitiesNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">186</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 84%;">&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; width: 1%;"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">TOTAL LIABILITIES</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:Liabilities" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">54,840</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:Liabilities" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">33,943</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Commitments and Contingencies (See Note&#160;22)</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;"><ix:nonFraction name="us-gaap:CommitmentsAndContingencies" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" xsi:nil="true"></ix:nonFraction></div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;"><ix:nonFraction name="us-gaap:CommitmentsAndContingencies" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" xsi:nil="true"></ix:nonFraction></div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">SHAREHOLDERS&#8217; EQUITY</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 9pt; font-family: &quot;Times New Roman&quot;; line-height: 10pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;">Preferred Stock, $</div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="PAsOn01_31_2023" unitRef="Unit_USD_per_Share" decimals="INF" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="PAsOn01_31_2022" unitRef="Unit_USD_per_Share" decimals="INF" scale="0" format="ixt:num-dot-decimal">10</ix:nonFraction></ix:nonFraction></div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"> Par Value, Authorized </div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="PAsOn01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="PAsOn01_31_2022" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">100,000</ix:nonFraction></ix:nonFraction></div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"> shares, </div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="PAsOn01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="PAsOn01_31_2022" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt-sec:numwordsen">None</ix:nonFraction></ix:nonFraction></div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Issued</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:PreferredStockValue" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:PreferredStockValue" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 9pt; font-family: &quot;Times New Roman&quot;; line-height: 10pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;">Common Stock, $</div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="PAsOn01_31_2023" unitRef="Unit_USD_per_Share" decimals="INF" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="PAsOn01_31_2022" unitRef="Unit_USD_per_Share" decimals="INF" scale="0" format="ixt:num-dot-decimal">0.05</ix:nonFraction></ix:nonFraction></div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"> Par Value, Authorized </div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="PAsOn01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">13,000,000</ix:nonFraction></div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"> shares; Issued </div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="PAsOn01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">10,676,851</ix:nonFraction></div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"> shares in 2023</div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"> and </div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="PAsOn01_31_2022" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">10,566,404</ix:nonFraction></div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> shares in 2022</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:CommonStockValue" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">534</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:CommonStockValue" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">528</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;">Additional <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Paid-in</div> Capital</div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AdditionalPaidInCapitalCommonStock" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,131</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AdditionalPaidInCapitalCommonStock" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">59,692</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Retained Earnings</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">59,175</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,514</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 9pt; font-family: &quot;Times New Roman&quot;; line-height: 10pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;">Treasury Stock, at Cost, </div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"><ix:nonFraction name="us-gaap:TreasuryStockShares" contextRef="PAsOn01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">3,342,032</ix:nonFraction></div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"> shares in 2023</div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"> and </div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px; font-size: 9pt;;display:inline;"><ix:nonFraction name="us-gaap:TreasuryStockShares" contextRef="PAsOn01_31_2022" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">3,324,280</ix:nonFraction></div><div style="line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> shares in 2022</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:TreasuryStockValue" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">34,235</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">)&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:TreasuryStockValue" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">33,974</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">)&#160;</div></div></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Accumulated Other Comprehensive Loss, net of tax</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,238</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">)&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,748</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">)&#160;</div></div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 84%;">&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; width: 1%;"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">TOTAL SHAREHOLDERS&#8217; EQUITY</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">84,367</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">81,012</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 84%;">&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; width: 1%;"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt; width: 84%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">TOTAL LIABILITIES AND SHAREHOLDERS&#8217; EQUITY</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">$</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">139,207</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 1%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">$</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">114,955</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 84%;">&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; width: 1%;"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 1%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table> <div style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">See Notes to the Consolidated Financial Statements. </div> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">F-5 </div> </div> </div> <div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div> <hr style="color:#999999;height:3px;width:100%"/> <div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div> </div> </div> <div> <div> <div style="background-color:white;display: inline;"> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="font-weight:bold;display:inline;">ASTRONOVA, INC. </div></div> <div id="fin415415_3" style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="font-weight:bold;display:inline;">CONSOLIDATED STATEMENTS OF INCOME </div></div> <div style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="font-weight:bold;display:inline;">For the years ended January&#160;31 </div></div> <div style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="font-weight:bold;display:inline;">(In Thousands, Except Per Share Data) </div></div> <div style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:73%"></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Revenue</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">142,527</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">117,480</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">116,033</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Cost of Revenue</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CostOfRevenue" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">94,371</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CostOfRevenue" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">73,741</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CostOfRevenue" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">74,673</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Gross Profit</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">48,156</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">43,739</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">41,360</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Costs and Expenses:</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Selling and Marketing</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:SellingAndMarketingExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,456</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:SellingAndMarketingExpense" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">23,177</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:SellingAndMarketingExpense" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">23,301</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Research and Development</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,822</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,753</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,206</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">General and Administrative</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,435</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,553</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,420</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Operating Expenses</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,713</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">39,483</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">38,927</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Operating Income</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,443</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,256</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,433</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Income (Expense):</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Interest Expense</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:InterestExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,678</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:InterestExpense" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">677</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:InterestExpense" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">955</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Gain (Loss) on Foreign Currency Transactions</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">474</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">288</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">590</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Gain on Extinguishment of Debt &#8211; PPP Loan</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:GainsLossesOnExtinguishmentOfDebt" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:GainsLossesOnExtinguishmentOfDebt" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,466</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Loss on Disposal of Assets</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">696</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other, net</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">119</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">27</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">111</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,033</ix:nonFraction></td>
<td style="vertical-align:bottom"><div style="letter-spacing: 0px; top: 0px;;display:inline;">)</div></td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" style="vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,778</ix:nonFraction></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td colspan="2" style="vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">254</ix:nonFraction></td>
<td style="vertical-align:bottom"><div style="letter-spacing: 0px; top: 0px;;display:inline;">)</div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Income before Income Taxes</div> </td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,410</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,034</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,179</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td> </tr>
<tr style="break-inside: avoid; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
<td style="vertical-align: top; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Income Tax Provision</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">749</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">605</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">895</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgb(204, 238, 255);">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Income</div> </td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,661</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,429</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,284</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td> </tr>
<tr style="break-inside: avoid; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
<td style="vertical-align: top; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Income Per Common Share&#8212;Basic</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">0.36</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">0.89</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">0.18</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgb(204, 238, 255);">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Income Per Common Share&#8212;Diluted</div> </td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">0.36</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">0.88</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">0.18</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td> </tr>
<tr style="break-inside: avoid; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
<td style="vertical-align: top; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Weighted Average Number of Common Shares Outstanding&#8212;Basic</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,307</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,207</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,104</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Dilutive Effect of Common Stock Equivalents</div> </td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:num-dot-decimal">67</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:num-dot-decimal">132</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:num-dot-decimal">62</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td> </tr>
<tr style="break-inside: avoid; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
<td style="vertical-align: top; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Weighted Average Number of Common Shares Outstanding&#8212;Diluted</div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,374</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,339</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,166</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td> </tr>
<tr>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); font-size: 0pt; line-height: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); font-size: 0pt; line-height: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;</div></div> </td>
<td style="background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); font-size: 0pt; line-height: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); font-size: 0pt; line-height: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;</div></div> </td>
<td style="background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); font-size: 0pt; line-height: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); font-size: 0pt; line-height: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;</div></div> </td>
<td style="background-color: rgba(255, 255, 255, 0); line-height: 0pt; font-size: 0pt;"><div style="font-size:0pt;;display:inline;">&#160;</div></td> </tr> </table> <div style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">See Notes to the Consolidated Financial Statements. </div> <div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">F-6 </div> </div> </div> </div> <div></div> </div> <div> <div style="background-color:white;display: inline;"> <div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div> <hr style="color:#999999;height:3px;width:100%"/> <div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div> </div> </div> </div> <div><div><div style="background-color:white;display: inline;"><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="font-weight:bold;display:inline;">ASTRONOVA, INC. </div></div><div id="fin415415_4" style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="font-weight:bold;display:inline;">CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME </div></div><div style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="font-weight:bold;display:inline;">For the years ended January&#160;31 </div></div><div style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="font-weight:bold;display:inline;">(In Thousands) </div></div><div style="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:79%"></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Income</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,661</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,429</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,284</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss), net of taxes and reclassification adjustments:</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign Currency Translation Adjustments</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">537</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,426</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">710</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Change in Value of Derivatives Designated as Cash Flow Hedge</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">239</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">(Gains) Losses from Cash Flow Hedges Reclassified to Income Statement</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">47</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">62</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">193</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Cross-Currency Interest Rate Swap Terminations</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">45</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss)</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">490</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,364</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">709</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Comprehensive Income</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,171</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,065</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,993</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table><div style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">See Notes to the Consolidated Financial Statements. </div><div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">F-7 </div></div></div><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div><hr style="color:#999999;height:3px;width:100%"/><div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div></div></div></div> <div> <div style="background-color:white;display: inline;"> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"> <div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">ASTRONOVA, INC. </div></div></div></div> <div id="tx415415_5" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS&#8217; EQUITY </div></div></div></div> <div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">($ In Thousands) </div></div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 9pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 45%;"></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="6" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Common Stock</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Additional<br/><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Paid-in</div><br/>Capital</div></div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Retained<br/>Earnings</div></div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Treasury<br/>Stock</div></div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated<br/>Other<br/>Comprehensive<br/>Income (Loss)</div></div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total<br/>Shareholders&#8217;<br/>Equity</div></div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Shares</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance January&#160;31, 2020</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="PAsOn01_31_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">10,343,610</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">517</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,130</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">49,298</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2020_TreasuryStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">33,477</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,093</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">71,375</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt;">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Share-Based Compensation</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" contextRef="P02_01_2020To01_31_2021_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,819</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,819</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Employee Option Exercises</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="P02_01_2020To01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">16,487</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="P02_01_2020To01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="P02_01_2020To01_31_2021_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">103</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="P02_01_2020To01_31_2021_TreasuryStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">104</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt;">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Restricted Stock Awards Vested, net</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross" contextRef="P02_01_2020To01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">64,997</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" contextRef="P02_01_2020To01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" contextRef="P02_01_2020To01_31_2021_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">3</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" contextRef="P02_01_2020To01_31_2021_TreasuryStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">111</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">111</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 9pt; line-height: 10pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Common Stock&#8212;Cash Dividend&#8212;$</div><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonFraction name="us-gaap:CommonStockDividendsPerShareCashPaid" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">0.07</ix:nonFraction></div><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> per share</div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:DividendsCommonStockCash" contextRef="P02_01_2020To01_31_2021_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">497</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:DividendsCommonStockCash" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">497</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt;">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Net Income</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2020To01_31_2021_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,284</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,284</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Other&#160;Comprehensive&#160;Income</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2020To01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">709</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">709</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom;;width:45%;">&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="break-inside: avoid; font-size: 10pt;">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance January&#160;31, 2021</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="PAsOn01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">10,425,094</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">521</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2021_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">58,049</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2021_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">50,085</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2021_TreasuryStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">33,588</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">384</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">74,683</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Share-Based Compensation</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" contextRef="P02_01_2021To01_31_2022_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,493</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,493</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt;">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Employee Option Exercises</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="P02_01_2021To01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">14,371</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="P02_01_2021To01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="P02_01_2021To01_31_2022_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">156</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">157</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Restricted Stock Awards Vested, net</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross" contextRef="P02_01_2021To01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">126,939</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" contextRef="P02_01_2021To01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" contextRef="P02_01_2021To01_31_2022_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">6</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" contextRef="P02_01_2021To01_31_2022_TreasuryStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">386</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">386</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt;">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Net Income</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2021To01_31_2022_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,429</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,429</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Other&#160;Comprehensive&#160;Loss</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2021To01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,364</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,364</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom;;width:45%;">&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="break-inside: avoid; font-size: 10pt;">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance January&#160;31, 2022</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="PAsOn01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">10,566,404</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">528</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2022_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">59,692</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2022_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,514</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2022_TreasuryStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">33,974</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,748</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">81,012</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Share-Based Compensation</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" contextRef="P02_01_2022To01_31_2023_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,290</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,290</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt;">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Employee Option Exercises</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="P02_01_2022To01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">25,123</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="P02_01_2022To01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="P02_01_2022To01_31_2023_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">153</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">155</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Restricted Stock Awards Vested, net</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross" contextRef="P02_01_2022To01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">85,324</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" contextRef="P02_01_2022To01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" contextRef="P02_01_2022To01_31_2023_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">4</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" contextRef="P02_01_2022To01_31_2023_TreasuryStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">261</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">261</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt;">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Net Income</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2022To01_31_2023_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,661</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,661</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="break-inside: avoid; font-size: 10pt; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Other&#160;Comprehensive&#160;Loss</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2022To01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">490</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">490</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom;;width:45%;">&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="break-inside: avoid; font-size: 10pt;">
<td style="vertical-align: top; line-height: 9pt; font-size: 9pt;;width:45%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance January&#160;31, 2023</div></div></div> </td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="PAsOn01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">10,676,851</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">534</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2023_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,131</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2023_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">59,175</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2023_TreasuryStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">34,235</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,238</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;;width:2%;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">84,367</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom;;width:45%;">&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom;;width:2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table> <div style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">See Notes to the Consolidated Financial Statements. </div> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">F-8 </div> </div> </div> <div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div> <hr style="color:#999999;height:3px;width:100%"/> <div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents<br/></a></div> </div> </div> <div><div><div style="background-color:white;display: inline;"><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">ASTRONOVA, INC. </div></div></div></div><div id="tx415415_6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">CONSOLIDATED STATEMENTS OF CASH FLOWS </div></div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">For the years ended January&#160;31 </div></div></div></div><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">(In Thousands) </div></div></div></div><div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 9pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 75%;"></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 9pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash Flows from Operating Activities:</div></div></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Net Income</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,661</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,429</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,284</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Adjustments to Reconcile Net Income to Net Cash (Used) Provided By Operating Activities:</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Depreciation and Amortization</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,916</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,994</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,983</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Amortization of Debt Issuance Costs</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AmortizationOfFinancingCosts" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">25</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AmortizationOfFinancingCosts" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">44</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:AmortizationOfFinancingCosts" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">75</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Share-Based Compensation</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,290</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,493</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,819</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Loss on Disposal of Assets</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">696</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Gain on Extinguishment of Debt</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:GainsLossesOnExtinguishmentOfDebt" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,466</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred Income Tax Provision (Benefit)</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxesAndTaxCredits" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,336</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxesAndTaxCredits" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">210</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxesAndTaxCredits" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,021</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Changes in Assets and Liabilities, net of impact of acquisition:</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts Receivable</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,234</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">77</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,702</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Other Receivable &#8211; Employee Retention Credit Receivable</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:OtherEmployeeRetentionCreditReceivable" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">3,135</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="alot:OtherEmployeeRetentionCreditReceivable" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,135</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventories</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,581</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,883</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">4,247</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts Payable and Accrued Expenses</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">3,236</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,052</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">57</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Income Taxes Payable</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,710</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,043</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,482</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Other</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,714</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,074</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">970</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 75%;">&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Net Cash Provided (Used) by Operating Activities</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,936</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,394</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">15,544</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 75%;">&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash Flows from Investing Activities:</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash Paid for Astro Machine Acquisition, net of cash acquired</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,034</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Additions to Property, Plant and Equipment</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">229</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,796</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,587</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 75%;">&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Net Cash Used by Investing Activities</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">17,263</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,796</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,587</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 75%;">&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash Flows from Financing Activities:</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Net Cash Proceeds from Employee Stock Option Plans</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">85</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">60</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Net Cash Proceeds from Share Purchases under Employee Stock Purchase Plan</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromStockPlans" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">70</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromStockPlans" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">96</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromStockPlans" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">95</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Net Cash Used for Payment of Taxes Related to Vested Restricted Stock</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">261</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">386</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">111</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Net (Repayments)/Borrowings under Revolving Credit Facility</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromRepaymentsOfLinesOfCredit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">15,900</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:ProceedsFromRepaymentsOfLinesOfCredit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">6,500</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Payment of Minimum Guarantee Royalty Obligation</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="alot:PaymentsOfMinimumGuaranteeRoyaltyObligation" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,000</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="alot:PaymentsOfMinimumGuaranteeRoyaltyObligation" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,000</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="alot:PaymentsOfMinimumGuaranteeRoyaltyObligation" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,000</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Proceeds from Long-Term Debt &#8211; PPP Loan</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,422</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Proceeds from Long-Term Debt Borrowings</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,000</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,000</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">15,232</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Payoff of Long-Term Debt</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:RepaymentsOfOtherLongTermDebt" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,576</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:RepaymentsOfOtherLongTermDebt" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,732</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Principal Payments on Long-Term Debt</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:RepaymentsOfMediumTermNotes" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,000</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:RepaymentsOfMediumTermNotes" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">750</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:RepaymentsOfMediumTermNotes" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,958</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Payments of Debt Issuance Costs</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsOfDebtIssuanceCosts" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">39</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsOfDebtIssuanceCosts" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">100</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Dividends Paid</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsOfDividendsCommonStock" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">497</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 75%;">&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Net Cash Provided (Used) by Financing Activities</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,755</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">5,556</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">5,140</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 75%;">&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Effect of Foreign Exchange Rate Changes on Cash and Cash Equivalents</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">114</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">205</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">627</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 75%;">&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Net Increase (Decrease) in Cash and Cash Equivalents</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,330</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">6,163</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,190</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash and Cash Equivalents, Beginning of Year</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,276</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="PAsOn01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,439</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="PAsOn01_31_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,249</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 75%;">&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash and Cash Equivalents, End of Year</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,946</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,276</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="PAsOn01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,439</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 75%;">&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 3%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Supplemental Information:</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash Paid During the Period for:</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 75%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Interest</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:InterestPaidNet" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">791</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:InterestPaidNet" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">342</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:InterestPaidNet" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">677</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Income Taxes, Net of Refunds</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxesPaidNet" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">311</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxesPaidNet" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,414</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxesPaidNet" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">446</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr>
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Non-Cash Transactions:</div></div></div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="font-size: 9pt; line-height: normal; margin-bottom: 0px; margin-top: 0px;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="line-height: normal; margin-bottom: 0px; margin-top: 0px;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="font-size: 9pt; line-height: normal; margin-bottom: 0px; margin-top: 0px;">&#160;</div></td></tr>
<tr style="break-inside: avoid; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
<td style="vertical-align: top; background-color: rgb(255, 255, 255);"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Reclassifcation of Inventories to Property, Plant and Equipment</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt; background-color: rgb(255, 255, 255);"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(255, 255, 255);"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(255, 255, 255);;text-align:right;"><ix:nonFraction name="alot:ReclassifcationOfInventoriesToPropertyPlantAndEquipment" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">348</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(255, 255, 255);"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt; background-color: rgb(255, 255, 255);"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(255, 255, 255);"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(255, 255, 255);;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(255, 255, 255);"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt; background-color: rgb(255, 255, 255);"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(255, 255, 255);"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(255, 255, 255);;text-align:right;"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(255, 255, 255);"><div style="font-size: 9pt; line-height: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr>
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Recognize intangible asset and royalty payable related to Honeywell Asset Purchase and License Agreement</div></div></div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="font-size: 9pt; margin-bottom: 0px; margin-top: 0px; line-height: 10pt;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="font-size: 9pt; margin-bottom: 0px; margin-top: 0px; line-height: 10pt;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">$</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="font-size: 9pt; margin-bottom: 0px; margin-top: 0px; text-align: right; line-height: 10pt;"><div style="text-indent: 0px; letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;"><ix:nonFraction name="alot:RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">530</ix:nonFraction></div><br/></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="font-size: 9pt; margin-bottom: 0px; margin-top: 0px; line-height: 10pt;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="font-size: 9pt; margin-bottom: 0px; margin-top: 0px; line-height: 10pt;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="font-size: 9pt; margin-bottom: 0px; margin-top: 0px; line-height: 10pt;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">$</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 4%; padding: 0pt 4pt 0pt 0pt; background-color: rgb(204, 238, 255);;text-align:right;"><div style="font-size: 9pt; margin-bottom: 0px; margin-top: 0px; text-indent: 0px; line-height: 10pt;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#8212;</div><br/></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="font-size: 9pt; margin-bottom: 0px; margin-top: 0px; line-height: 10pt;">&#160;</div></td>
<td style="vertical-align: bottom; width: 3%; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="font-size: 9pt; margin-bottom: 0px; margin-top: 0px; line-height: 10pt;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="font-size: 9pt; margin-bottom: 0px; margin-top: 0px; line-height: 10pt;"><div style="letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">$</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; width: 4%; padding: 0pt 4pt 0pt 0pt; background-color: rgb(204, 238, 255);;text-align:right;"><div style="font-size: 9pt; margin-bottom: 0px; margin-top: 0px; text-indent: 0px; line-height: 10pt;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px; line-height: 10pt;;display:inline;">&#8212;</div></div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt; background-color: rgb(204, 238, 255);"><div style="font-size: 9pt; margin-bottom: 0px; margin-top: 0px; line-height: 10pt;">&#160;</div></td></tr></table><div style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">See Notes to the Consolidated Financial Statements. </div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">F-9 </div></div></div></div><div></div></div><div><div style="background-color:white;display: inline;"><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div><hr style="color:#999999;height:3px;width:100%"/><div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div></div></div></div> <div><div><div style="background-color:white;display: inline;"><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="font-weight:bold;display:inline;">ASTRONOVA, INC. </div></div><div id="fin415415_7" style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="font-weight:bold;display:inline;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS </div></div><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="font-weight:bold;display:inline;">January&#160;31, 2023, 2022, and 2021 </div></div><ix:nonNumeric name="us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771278"> <div style="margin-top: 12pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 1&#8212;Summary of Significant Accounting Policies </div></div> <ix:nonNumeric name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Basis of Presentation:</div></div> The accompanying financial statements and accompanying notes have been prepared by us pursuant to the rules and regulations of the U.S. Securities and Exchange Commission (&#8220;SEC&#8221;) and are presented in conformity with U.S. generally accepted accounting principles (&#8220;U.S. GAAP&#8221;). Our fiscal year end is January&#160;31. Unless otherwise stated, all years and dates refer to our fiscal year. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:ConsolidationPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Principles of Consolidation: </div></div>The consolidated financial statements include the accounts of AstroNova, Inc. and its subsidiaries. All material intercompany accounts and transactions are eliminated in consolidation. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:PriorPeriodReclassificationAdjustmentDescription" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Reclassification: </div></div>Certain amounts in prior year&#8217;s financial statements have been reclassified to conform to the current year&#8217;s presentation. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:UseOfEstimates" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Use of Estimates: </div></div>The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect these financial statements and accompanying notes using information that is reasonably available to us at this time. Some of the more significant estimates relate to revenue recognition; the allowances for doubtful accounts; inventory valuation; income taxes; valuation of long-lived assets, intangible assets and goodwill; share-based compensation; and warranty reserves. Management&#8217;s estimates are based on the facts and circumstances available at the time estimates are made, historical experience, risk of loss, general economic conditions and trends, and management&#8217;s assessments of the probable future outcome of these matters, including our expectations at the time<div style="letter-spacing: 0px; top: 0px;;display:inline;"> regarding</div> the ongoing impact from the <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">COVID-19</div> pandemic. Consequently, actual results could differ from those estimates. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Cash and Cash Equivalents:</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"> </div></div>Highly liquid investments with an original maturity of <ix:nonNumeric name="alot:CashEquivalentsMaturityPeriodDescription" contextRef="P02_01_2022To01_31_2023">90</ix:nonNumeric> days or less are considered to be cash equivalents. At<div style="letter-spacing: 0px; top: 0px;;display:inline;"> January</div>&#160;31, 2023 and 2022, $<ix:nonFraction name="alot:CashHeldInForeignBankAccounts" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">3.2</ix:nonFraction>&#160;million and $<ix:nonFraction name="alot:CashHeldInForeignBankAccounts" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">3.7</ix:nonFraction>&#160;million, respectively, was held in foreign bank accounts. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:InventoryPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Inventories:</div></div> Inventories are stated at the lower of standard and average cost or net realizable value and include material, labor and manufacturing overhead. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Property, Plant and Equipment: </div></div><div style="letter-spacing: 0px; top: 0px;;display:inline;">Property</div>, plant and equipment are stated at cost less accumulated depreciation. Depreciation is provided on the straight-line basis over the estimated useful lives of the assets (land improvements&#8212;<ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" contextRef="P02_01_2022To01_31_2023_LandImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis" format="ixt-sec:duryear">10</ix:nonNumeric> to <ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" contextRef="P02_01_2022To01_31_2023_LandImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis" format="ixt-sec:duryear">20</ix:nonNumeric> years; buildings and leasehold improvements&#8212;<ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" contextRef="P02_01_2022To01_31_2023_BuildingAndLeaseholdImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis" format="ixt-sec:duryear">10</ix:nonNumeric> to <ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" contextRef="P02_01_2022To01_31_2023_BuildingAndLeaseholdImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis" format="ixt-sec:duryear">45</ix:nonNumeric> years; machinery and equipment&#8212;<ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" contextRef="P02_01_2022To01_31_2023_MachineryAndEquipmentMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis" format="ixt-sec:duryear">3</ix:nonNumeric> to <ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" contextRef="P02_01_2022To01_31_2023_MachineryAndEquipmentMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis" format="ixt-sec:duryear">10</ix:nonNumeric> years and <div style="letter-spacing: 0px; top: 0px;;display:inline;">computer</div> equipment and software&#8212;<ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" contextRef="P02_01_2022To01_31_2023_ComputerEquipmentAndSoftwareMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis" format="ixt-sec:duryear">3</ix:nonNumeric> to <ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" contextRef="P02_01_2022To01_31_2023_ComputerEquipmentAndSoftwareMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis" format="ixt-sec:duryear">10</ix:nonNumeric> years). </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:RevenueRecognitionPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771294"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Revenue Recognition: </div></div>We recognize revenue in accordance with Accounting Standards Codification (&#8220;ASC&#8221;) 606 &#8220;Revenue from Contracts with Customers (&#8220;ASC 606&#8221;).&#8221;&#160;The core principle of ASC&#160;606 is to recognize revenue when promised goods or services are transferred to customers in an amount that reflects the consideration that is expected to be received for those goods or services. ASC&#160;606 defines a five-step process to recognize revenue and requires judgment and estimates within the revenue recognition process, including identifying contracts with customers, identifying performance obligations in the contract, determining and estimating the amount of any variable consideration to include in the transaction price and allocating the transaction price to each separate performance obligation and recognizing revenue when the entity satisfies each performance obligation. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The vast majority of our revenue is generated from the sale of distinct products. Revenue is measured as the amount of consideration we expect to receive in exchange for such products, which is generally at the contractually stated prices, and is recognized when we satisfy a performance obligation by transferring control of </div> <ix:exclude> <div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">F-10 </div> </ix:exclude></ix:nonNumeric></ix:nonNumeric></div></div><ix:continuation id="TextSelection_75771294" continuedAt="TextSelectionAppend_75771294_1"><ix:continuation id="TextSelection_75771278" continuedAt="TextSelectionAppend_75771278_1"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771278_1" continuedAt="TextSelectionAppend_75771278_2"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771278_2" continuedAt="TextSelectionAppend_75771278_3"><ix:exclude> <div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div> </ix:exclude></ix:continuation> </ix:continuation><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771294_1" continuedAt="TextSelectionAppend_75771294_2"><ix:continuation id="TextSelectionAppend_75771278_3" continuedAt="TextSelectionAppend_75771278_4"><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">a product to a customer. The transfer of control generally occurs at one point in time, upon shipment, when title and risk of loss pass to the customer. Returns and customer credits are infrequent and are recorded as a reduction to revenue. Sales taxes and value added taxes collected concurrently with revenue generating activities are excluded from revenue. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Many of the contracts entered into with customers are commonly comprised of a combination of equipment, supplies, installation and/or training services. We determine performance obligations by assessing whether the products or services are distinct from other elements of the contract. In order to be distinct, the product must perform either on its own or with readily available resources and must be separate within the context of the contract. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Most of our hardware products contain embedded operating systems and data management software which is included in the purchase price of the equipment. The software is deemed incidental to the systems as a whole, as it is not sold or marketed separately, and its production costs are minor compared to those of the hardware system. Hardware and software elements are typically delivered at the same time and are accounted for as a single performance obligation for which revenue is recognized at the point in time when ownership is transferred to the customer. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Installation and training services vary based on certain factors such as the complexity of the equipment, staffing availability in a geographic location and customer preferences, and can range from a few days to a few months. The delivery of installation and training services are not assessed to determine whether they are separate performance obligations, as the amounts are not material to the contract. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Shipping and handling activities that occur after control over a product has transferred to a customer are accounted for as fulfillment activities rather than performance obligations, as allowed under a practical expedient provided by ASC 606. The shipping and handling fees charged to customers are recognized as revenue and the related costs are included in cost of revenue at the point in time when ownership of the product is transferred to the customer. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We may perform services at the request of the customer, generally for the repair and maintenance of products previously sold. These services are short in duration and total approximately <ix:nonFraction name="alot:PercentageOfServiceRevenueToTotalRevenue" contextRef="PAsOn01_31_2023_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MaximumMembersrtRangeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">5.0</ix:nonFraction>% and <ix:nonFraction name="alot:PercentageOfServiceRevenueToTotalRevenue" contextRef="PAsOn01_31_2022_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MaximumMembersrtRangeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">4.4</ix:nonFraction>% of revenue for the years ended January&#160;31, 2023 and 2022, respectively. Revenue is recognized as services are rendered and accepted by the customer. We also provide service agreements on certain of our Product Identification equipment. Service agreements are purchased separately from the equipment and provide for the right to obtain service and maintenance on the equipment for a period of typically one to two years. Accordingly, revenue on these agreements is recognized over the term of the agreements.&#160;The portion of service agreement contracts that are uncompleted at the end of any reporting period are included in deferred revenue. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We generally provide warranties for our products. The standard warranty period is typically 12 months for most hardware products except for airborne printers, which typically have warranties that extend for <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="alot:ProductsWarrantyPeriod" contextRef="P02_01_2022To01_31_2023_AirborneProductMembersrtProductOrServiceAxis_MinimumMembersrtRangeAxis" format="ixt-sec:duryear">3</ix:nonNumeric>-<ix:nonNumeric name="alot:ProductsWarrantyPeriod" contextRef="P02_01_2022To01_31_2023_AirborneProductMembersrtProductOrServiceAxis_MaximumMembersrtRangeAxis" format="ixt-sec:duryear">5</ix:nonNumeric></div> years, consistent with industry practice. Such assurance-type warranties are not deemed to be separate performance obligations from the hardware product and costs associated with providing the warranties are accrued in accordance with ASC 450, &#8220;Contingencies,&#8221; as we have the ability to ascertain the likelihood of the liability and can reasonably estimate the amount of the liability. Our estimate of costs to service the warranty obligations is based on historical experience and expectations of future conditions. To the extent that our experience in warranty claims or costs associated with servicing those claims differ from the original estimates, revisions to the estimated warranty liability are recorded at that time, with an offsetting adjustment to cost of revenue.&#160;On occasion, customers request a warranty period longer than our standard warranty. In those instances, in which extended warranty services are separately quoted to the customer, an additional performance obligation is created, and the associated revenue is deferred and recognized as service revenue ratably over the term of the extended warranty period. The portion of service contracts and extended warranty services agreements that are uncompleted at the end of any reporting period are included in deferred revenue. </div><div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"><ix:exclude>F-11</ix:exclude></div></ix:continuation></ix:continuation></div><ix:continuation id="TextSelectionAppend_75771294_2" continuedAt="TextSelectionAppend_75771294_3"><ix:continuation id="TextSelectionAppend_75771278_4" continuedAt="TextSelectionAppend_75771278_5"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771278_5" continuedAt="TextSelectionAppend_75771278_6"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771278_6" continuedAt="TextSelectionAppend_75771278_7"><ix:exclude> <div style="text-align: left;; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;;font-size: .83em;"><a href="#toc">Table of Contents</a></div> </ix:exclude></ix:continuation></ix:continuation></div> </div></div></div> <div><div><div style="background-color:white;display: inline;"><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771278_7" continuedAt="TextSelectionAppend_75771278_8"><ix:continuation id="TextSelectionAppend_75771294_3"><div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We recognize and subsequently amortize an asset for the incremental direct costs of obtaining a contract with a customer if we expect the benefit of those costs to be longer than one year (Refer to Note 3, &#8220;Revenue Recognition&#8221; included in our notes to the consolidated financial statement). We apply the practical expedient to expense costs incurred for costs to obtain a contract when the amortization period would have been less than a year. These costs include sales commissions paid to the internal direct sales team as well as to third-party representatives and distributors.&#160;Contractual agreements with each of these parties outline commission structures and rates to be paid.&#160;Generally speaking, the contracts are all individual procurement decisions by the customers and do not include renewal provisions and, as such, the majority of the contracts have an economic life of significantly less than a year.</div></ix:continuation><ix:nonNumeric name="us-gaap:ReceivablesPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Accounts Receivables and Allowance for Doubtful Accounts: </div></div>Standard payment terms are typically 30&#160;days after shipment but vary by type and geographic location of our customer. Credit is extended based upon an evaluation of the customer&#8217;s financial condition. In circumstances where we are aware of a customer&#8217;s inability to meet its financial obligations, an allowance is established. The remainder of the allowance established is based on a variety of factors, including the age of amounts outstanding relative to their contractual due date, historical <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">write-off</div> experience and current market assessments. Accounts receivable are stated at their estimated net realizable value. </div></ix:nonNumeric><ix:nonNumeric name="us-gaap:BusinessCombinationsPolicy" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style:italic;display:inline;">Business Combinations: </div>We account for business acquisitions under the acquisition method of accounting in accordance with&#160;ASC 805, &#8216;&#8216;Business Combinations,&#8217;&#8217; where the total purchase price is allocated to the tangible and identified intangible assets acquired and liabilities assumed based on their estimated fair values. The purchase price is allocated using the information currently available, and may be adjusted, up to one year from acquisition date, after obtaining more information regarding, among other things, asset valuations, liabilities assumed and revisions to preliminary estimates. The purchase price in excess of the fair value of the tangible and identified intangible assets acquired less liabilities assumed is recognized as goodwill. Determining the fair value of assets acquired and liabilities assumed requires management to use significant judgment and estimates, including the selection of valuation methodologies, estimates of future revenue, costs and cash flows, discount rates, and selection of comparable companies. Management&#8217;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and unpredictable. As a result, actual results may differ from these estimates. During the measurement period, we may record adjustments to acquired assets and assumed liabilities, with corresponding offsets to goodwill. Upon the conclusion of a measurement period, any subsequent adjustments are recorded to earnings. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">At the acquisition date, the Company measures the fair values of all assets acquired and liabilities assumed that arise from contractual contingencies. The Company also measures the fair values of all <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-contractual</div> contingencies if, as of the acquisitions date, it is more likely than not that the contingencies will give rise to assets or liabilities. </div><div style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Acquisition related costs not considered part of the considerations are expensed as incurred and recorded in Acquisition costs within the consolidated statement of operations. </div></ix:nonNumeric><ix:nonNumeric name="us-gaap:ResearchAndDevelopmentExpensePolicy" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="display:inline;">Research</div> and Development Costs: </div></div>We charge costs to expense in the period incurred, and these expenses are presented in the consolidated statement of income. The following costs are included in research and development expense: salaries and benefits, external engineering service costs, engineering related information costs and supplies. </div></ix:nonNumeric><ix:nonNumeric name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771297"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Foreign Currency Translation: </div></div>The financial statements of foreign subsidiaries and branches are measured using the local currency as the functional currency. Foreign currency-denominated assets and liabilities are translated into U.S. dollars at <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">year-end</div> exchange rates with the translation adjustment recorded as a component of accumulated comprehensive income (loss) in shareholders&#8217; equity. Revenues and expenses are translated at the average monthly exchange rates in effect during the related period. We do not provide for U.S. income taxes on foreign currency translation adjustments associated with our subsidiaries in Germany, Denmark and China since </div><div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"><ix:exclude>F-12</ix:exclude></div></ix:nonNumeric></ix:continuation></div></div><ix:continuation id="TextSelection_75771297" continuedAt="TextSelectionAppend_75771297_1"><ix:continuation id="TextSelectionAppend_75771278_8" continuedAt="TextSelectionAppend_75771278_9"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771278_9" continuedAt="TextSelectionAppend_75771278_10"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771278_10" continuedAt="TextSelectionAppend_75771278_11"><ix:exclude><div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div></ix:exclude></ix:continuation></ix:continuation><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771278_11" continuedAt="TextSelectionAppend_75771278_12"><ix:continuation id="TextSelectionAppend_75771297_1"><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">their undistributed earnings are considered to be permanently invested. Included in our consolidated statements of income was a net transaction foreign exchange loss of $<ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" contextRef="P02_01_2021To01_31_2022_ForeignExchangeMemberusgaapTradingActivityByTypeAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.5</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" contextRef="P02_01_2022To01_31_2023_ForeignExchangeMemberusgaapTradingActivityByTypeAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.3</ix:nonFraction>&#160;million in fiscal 2022 and 2023, respectively, and a net transaction foreign exchange gain of $<ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" contextRef="P02_01_2020To01_31_2021_ForeignExchangeMemberusgaapTradingActivityByTypeAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.6</ix:nonFraction>&#160;million in fiscal 2021. </div></ix:continuation><ix:nonNumeric name="us-gaap:AdvertisingCostsPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Advertising: </div></div>We expense advertising costs as incurred. Advertising costs including advertising production, trade shows and other activities are designed to enhance demand for our products and amounted to approximately $<ix:nonFraction name="us-gaap:AdvertisingExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.6</ix:nonFraction>&#160;million, $<ix:nonFraction name="us-gaap:AdvertisingExpense" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.3</ix:nonFraction>&#160;million, and $<ix:nonFraction name="us-gaap:AdvertisingExpense" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.9</ix:nonFraction>&#160;million in fiscal years 2023, 2022, and 2021, respectively. </div></ix:nonNumeric><ix:nonNumeric name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Long-Lived Assets: </div></div>Long-lived assets to be held and used are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of such assets may not be recoverable. Determination of recoverability is based on an estimate of undiscounted future cash flows resulting from the use of the asset and its eventual disposition. If the projected undiscounted cash flows are less than the carrying value, then an impairment charge would be recorded for the excess of the carrying value over the fair value, as determined by the discounting of future cash flows. There were <ix:nonFraction name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt-sec:numwordsen">no</ix:nonFraction></ix:nonFraction></ix:nonFraction> impairment charges for our long-lived assets in fiscal years 2023, 2022, or 2021. </div></ix:nonNumeric><ix:nonNumeric name="us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Intangible Assets: </div></div>Intangible assets include the value of customer and distributor relationships, trademarks and existing technology acquired in connection with business and asset acquisitions and are stated at cost (fair value at acquisition) less accumulated amortization. These intangible assets have a definite life and are amortized over the assets&#8217; useful lives using a systematic and rational basis which is representative of the assets&#8217; use. Intangible assets with a definite life are tested for impairment whenever events or circumstances indicate that the carrying amount of an asset (asset group) may not be recoverable. If necessary, an impairment loss is recognized when the carrying amount of an asset exceeds the estimated undiscounted cash flows used in determining the fair value of the asset. The amount of the impairment loss recorded is calculated by the excess of the asset&#8217;s carrying value over its fair value. Fair value is generally determined using a discounted cash flow analysis. There were <ix:nonFraction name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt-sec:numwordsen">no</ix:nonFraction></ix:nonFraction></ix:nonFraction> impairment charges for our intangible assets in fiscal years 2023, 2022, or 2021. </div></ix:nonNumeric><ix:nonNumeric name="us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771301"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Goodwill: </div></div>Goodwill represents the excess of the aggregate purchase price over the fair value of the net assets acquired in a purchase business combination. Management evaluates the recoverability of goodwill annually or more frequently if events or changes in circumstances, such as declines in revenue, earnings or cash flows, or material adverse changes in the business climate indicate that the carrying value of an asset might be impaired. Goodwill is tested for impairment at the reporting unit level. A reporting unit is an operating segment, or a business unit one level below an operating segment if discrete financial information for that business is prepared and regularly reviewed by segment management. However, components within an operating segment are aggregated as a single reporting unit if they have similar economic characteristics. We determined that each of our operating segments (Product Identification (&#8220;PI&#8221;) and Test&#160;&amp; Measurement (&#8220;T&amp;M&#8221;) represents a reporting unit for purposes of&#160;goodwill impairment testing. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The accounting guidance related to&#160;goodwill impairment testing allows for the performance of an optional qualitative assessment of whether it is more likely than not that the fair value of a reporting unit is less than its carrying value. Factors that management considers in this qualitative assessment include macroeconomic conditions, industry and market considerations, overall financial performance (both current and projected), changes in management and strategy and changes in the composition or carrying amount of net assets. If this qualitative assessment indicates that it is more likely than not that the fair value of a reporting unit is less than its carrying value, then a quantitative assessment is required for the reporting unit. Additionally, we can elect to forgo the qualitative assessment and perform the quantitative test. The quantitative assessment compares the fair value of the reporting unit with its carrying value. If the quantitative assessment is performed, we estimate the fair value of our reporting units using a blended income and market approach. The income approach is based on a discounted cash flow model and provides a fair value estimate based upon the reporting unit&#8217;s expected long-term operating cash flow performance. The market approach compares the reporting unit to publicly traded companies and transactions involving similar business, and requires the use of many assumptions and estimates including future revenue, expenses, capital expenditures, and working capital, as well as discount factors and </div><div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"><ix:exclude>F-13</ix:exclude></div></ix:nonNumeric></ix:continuation></div></div><ix:continuation id="TextSelection_75771301" continuedAt="TextSelectionAppend_75771301_1"><ix:continuation id="TextSelectionAppend_75771278_12" continuedAt="TextSelectionAppend_75771278_13"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771278_13" continuedAt="TextSelectionAppend_75771278_14"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771278_14" continuedAt="TextSelectionAppend_75771278_15"><ix:exclude><div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div></ix:exclude></ix:continuation></ix:continuation></div></div></div> <div> <div style="background-color:white;display: inline;"> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771278_15" continuedAt="TextSelectionAppend_75771278_16"><ix:continuation id="TextSelectionAppend_75771301_1"> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">income tax rates. If the fair value of the reporting unit exceeds the carrying value of the net assets including&#160;goodwill&#160;assigned to that unit,&#160;goodwill&#160;is not impaired. If the carrying value of the reporting unit&#8217;s net assets including&#160;goodwill&#160;exceeds the fair value of the reporting unit, then we record an impairment charge based on that difference. We performed a qualitative assessment for our fiscal 2023 analysis of goodwill. Based on this assessment, management does not believe that it is more likely than not that the carrying values of the reporting units exceed their fair values. Accordingly, no quantitative assessment was performed. There were no impairment charges for our goodwill in fiscal years 2023, 2022, or 2021.</div> </ix:continuation><ix:nonNumeric name="us-gaap:LessorLeasesPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Leases: </div></div>We account for our leases in accordance with ASC 842, &#8220;Leases&#8221; (&#8220;ASC 842&#8221;). ASC 842 requires a lessee to recognize assets and liabilities on the balance sheet for all leases, with the result being the recognition of a right of use (&#8220;ROU&#8221;) asset and a lease liability. The lease liability is equal to the present value of the minimum lease payments for the term of the lease, including any optional renewal periods determined to be reasonably certain to be exercised, using a discount rate determined at lease commencement. This discount rate is the rate implicit in the lease, if known; otherwise, the incremental borrowing rate for the expected lease term is used. Our incremental borrowing rate approximates the rate we would have to pay to borrow on a collateralized basis over a similar term at lease inception. The value of the ROU asset is equal to the initial measurement of the lease liability plus any lease payments made to the lessor at or before the commencement date and any unamortized initial direct costs incurred by the lessee, less any unamortized lease incentives received. Several of our lease contracts include options to extend the lease term and we include the renewal options for these leases in the determination of the ROU asset and lease liability when the likelihood of renewal is determined to be reasonably certain. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We enter into lease contracts for certain of our facilities at various locations worldwide. At inception of a contract, we determine whether the contract is or contains a lease. If we have a right to obtain substantially all of the economic benefits from the use of the identified asset and the right to direct the use of the asset, then the contract contains a lease. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">There are two types of leases, operating leases and finance leases. Lease classification is determined at lease commencement. We have made an accounting policy election to apply the short-term exception, which does not require the capitalization of leases with terms of 12 months or less. All of our leases are classified as operating leases. Operating lease expense is recognized on a straight-line basis over the lease term and included in general and administrative expense on the consolidated statement of income. ROU assets are classified as such on the consolidated balance sheet, short-term lease liabilities are classified in accrued expenses, and long-term lease liabilities are classified as such in the consolidated balance sheet. In the statement of cash flow, payments for operating leases are classified as operating activities. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In addition, several of our lease agreements include <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-lease</div> components for items such as common area maintenance and utilities which are accounted for separately from the lease component. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:IncomeTaxPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771302"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Income Taxes: </div></div>We use the liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are determined based on the differences between the financial reporting basis and tax basis of the assets and liabilities and are measured using statutory tax rates that will be in effect when the differences are expected to reverse. Our deferred taxes are presented as <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-current</div> in the accompanying consolidated balance sheet. An allowance against deferred tax assets is recognized when it is <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">more-likely-than-not</div> that some portion or all of the deferred tax assets will not be realized. At January&#160;31, 2023, a valuation allowance was provided for deferred tax assets attributable to certain domestic R&amp;D, foreign tax credit carryforwards and China net operating losses, all of which are expected to expire unused. At January&#160;31, 2022, a valuation allowance was provided for deferred tax assets attributed to certain domestic R&amp;D and foreign tax credit carryforwards. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We account for uncertain tax positions in accordance with the guidance provided in ASC 740, &#8220;Accounting for Income Taxes.&#8221; This guidance describes a recognition threshold and measurement attribute for the financial statement disclosure of tax positions taken or expected to be taken in a tax return and requires recognition of tax </div> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"><ix:exclude>F-14</ix:exclude></div> </ix:nonNumeric></ix:continuation></div> </div> <ix:continuation id="TextSelection_75771302" continuedAt="TextSelectionAppend_75771302_1"><ix:continuation id="TextSelectionAppend_75771278_16" continuedAt="TextSelectionAppend_75771278_17"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation> <ix:continuation id="TextSelectionAppend_75771278_17" continuedAt="TextSelectionAppend_75771278_18"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771278_18" continuedAt="TextSelectionAppend_75771278_19"><ix:exclude> <div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div> </ix:exclude></ix:continuation> </ix:continuation><div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771278_19" continuedAt="TextSelectionAppend_75771278_20"><ix:continuation id="TextSelectionAppend_75771302_1"> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">benefits that satisfy a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">more-likely-than-not</div> threshold. ASC 740 also provides guidance on <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">de-recognition,</div> classification, interest and penalties, accounting in interim periods and disclosure. </div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On March&#160;27,&#160;2020,&#160;the Coronavirus Aid,&#160;Relief,&#160;and Economic Security Act (&#8220;CARES Act&#8221;)&#160;was signed into law. The&#160;legislation had sweeping effects including various types of economic relief for impacted businesses and industries. One&#160;such&#160;relief&#160;provision&#160;was&#160;the Paycheck Protection Program, which provided short-term cash flow assistance to finance employee payroll and qualified expenses. On May&#160;6, 2020, we entered into a loan agreement with, and executed a promissory note in favor of Greenwood Credit Union (&#8220;Greenwood&#8221;) pursuant to which we borrowed</div></div>&#160;$<ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="PAsOn05_06_2020_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">4.4</ix:nonFraction> <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">million (the &#8220;PPP Loan&#8221;). On December&#160;27, 2020, the Consolidated Appropriations Act, 2021, H.R. 133 was signed into law. The legislation permits the deductibility of expenses to the extent that the payment of such expenses results (or is expected to result) in the forgiveness of a loan (covered loan) guaranteed under the Paycheck Protection Program. We have fully utilized the PPP Loan proceeds for qualifying expenses and applied for forgiveness <br/>of the PPP Loan. Consistent with the legislation, we deducted the full</div></div>&#160;$<ix:nonFraction name="us-gaap:ProceedsFromLoans" contextRef="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis_PromissoryNoteMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">4.4</ix:nonFraction> million of qualified expenses on our 2020 federal tax return. On June 15, 2021, Greenwood notified us that the United States Small Business Administration (the &#8220;SBA&#8221;) approved our application for forgiveness of the entire $<ix:nonFraction name="us-gaap:DebtInstrumentDecreaseForgiveness" contextRef="P06_15_2021To06_15_2021_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">4.4</ix:nonFraction> million principal balance of our PPP Loan and all accrued interest thereon. As a result, in the second quarter of fiscal 2022, we recorded a<br/> $<ix:nonFraction name="us-gaap:GainsLossesOnExtinguishmentOfDebt" contextRef="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">4.5</ix:nonFraction> million gain on extinguishment of debt. The PPP loan forgiveness is excluded from taxable income under Section 1106(i) of the CARES Act. </div> </ix:continuation><ix:nonNumeric name="us-gaap:EarningsPerSharePolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Net Income Per Common Share: </div></div>Basic net income per share is based on the weighted average number of shares outstanding during the period. Diluted net income per share is based on the basic weighted average number of shares and potential common equivalent shares for stock options, restricted stock awards and restricted stock units outstanding during the period using the treasury stock method. In fiscal years 2023, 2022, and 2021, there were <ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">685,667</ix:nonFraction>; <ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">345,085</ix:nonFraction>; and <ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">642,623</ix:nonFraction>, respectively, common equivalent shares that were not included in the computation of diluted net income per common share because their inclusion would be anti-dilutive. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:FairValueOfFinancialInstrumentsPolicy" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Fair Value Measurement: </div></div>We measure our assets and liabilities at fair value on a recurring and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-recurring</div> basis in accordance with the guidance provided in ASC 820, &#8220;Fair Value Measurement and Disclosures,&#8221; which defines fair value as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. In addition, ASC 820 establishes a three-tiered hierarchy for inputs used in management&#8217;s determination of fair value of financial instruments that emphasizes the use of observable inputs over the use of unobservable inputs by requiring that observable inputs be used when available. Observable inputs are inputs that reflect management&#8217;s belief about the assumptions market participants would use in pricing a financial instrument based on the best information available in the circumstances. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The fair value hierarchy is summarized as follows: </div> <div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top;text-align:left;">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt; text-align: left; line-height: normal;">Level 1&#8212;Quoted prices in active markets for identical assets or liabilities; </div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top;text-align:left;">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt; text-align: left; line-height: normal;">Level 2&#8212;Inputs other than Level&#160;1 that are observable, either directly or indirectly, such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities; and </div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top;text-align:left;">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt; text-align: left; line-height: normal;">Level 3&#8212;Unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities </div> </td> </tr> </table> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Cash and cash equivalents, accounts receivable, accounts payable, accrued compensation, other accrued expenses and income tax payable are reflected in the consolidated balance sheet at carrying value, which approximates fair value due to the short-term nature of these instruments. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:SelfInsuranceReservePolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771476"> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"><ix:exclude>F-15</ix:exclude></div> </ix:nonNumeric></ix:continuation></div> </div> <ix:continuation id="TextSelection_75771476" continuedAt="TextSelectionAppend_75771476_1"><ix:continuation id="TextSelectionAppend_75771278_20" continuedAt="TextSelectionAppend_75771278_21"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation> <ix:continuation id="TextSelectionAppend_75771278_21" continuedAt="TextSelectionAppend_75771278_22"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771278_22" continuedAt="TextSelectionAppend_75771278_23"><ix:exclude> <div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div> </ix:exclude></ix:continuation></ix:continuation></div> </div> <div> <div style="background-color:white;display: inline;"> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771278_23"><ix:continuation id="TextSelectionAppend_75771476_1"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Self-Insurance:</div></div> We are self-insured for U.S. medical and dental benefits for qualifying employees and maintain stop-loss coverage from a third party which limits our exposure to large claims. We record a liability associated with these benefits that includes an estimate of both claims filed and losses incurred but not yet reported based on historical claims experience. In estimating this accrual, we utilize an independent third-party broker to estimate a range of expected losses, which are based on analyses of historical data. Assumptions are closely monitored and adjusted when warranted by changing circumstances. Our liability for self-insured claims is included within accrued compensation in our consolidated balance sheets and was </div></div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">$<ix:nonFraction name="us-gaap:AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.3</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.2</ix:nonFraction>&#160;million at January&#160;31, 2023 and 2022, respectively. </div> </ix:continuation><ix:nonNumeric name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Share-Based Compensation:</div></div> Compensation expense for time-based restricted stock units is measured at the grant date and recognized ratably over the vesting period. We determine the fair value of time-based and performance-based restricted stock units based on the closing market price of our common stock on the grant date. The recognition of compensation expense associated with performance-based restricted stock units requires judgment in assessing the probability of meeting the performance goals, as well as defined criteria for assessing achievement of the performance-related goals. For purposes of measuring compensation expense, the number of shares ultimately expected to vest is estimated at each reporting date based on management&#8217;s expectations regarding the relevant performance criteria. The performance shares begin vesting only upon the achievement of the performance criteria. The achievement of the performance goals can impact the valuation and associated expense of the restricted stock units. The assumptions used in accounting for the share-based payment awards represent management&#8217;s best estimates, but these estimates involve inherent uncertainties and the application of management judgment. As a result, if circumstances change and we use different assumptions, our stock-based compensation expense could be materially different in the future. </div></div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Share-based compensation becomes deductible for determining income taxes when the related award vests, is exercised, or is forfeited depending on the type of share-based award and subject to relevant tax law. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:DerivativesPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Derivative Financial Instruments:</div></div> We occasionally use derivative instruments as part of our overall strategy to manage exposure to market risks primarily associated with fluctuations in foreign currency exchange rates and interest rates. Derivative instruments are recognized as either assets or liabilities in the balance sheet at fair value. The accounting for changes in the fair value (i.e., gains or losses) of a derivative instrument depends on whether it has been designated and qualifies as part of a hedging relationship and, further, on the type of hedging relationship. For derivative instruments not designated as hedging instruments, the gain or loss is recognized in the statement of income during the current period. For those derivative instruments that are designated and qualify as hedging instruments, a company must designate the hedging instrument, based upon the exposure being hedged, as a fair value hedge, cash flow hedge, or a hedge of a net investment in a foreign operation. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">For derivative instruments that are designated and qualify as a cash flow hedge, the gain or loss on the derivative instrument is reported as a component of other comprehensive income/(loss) and reclassified into earnings in the same line item associated with the forecasted transaction, and in the same period or periods during which the hedged transaction affects earnings (e.g., in &#8220;Interest Expense&#8221; when the hedged transactions are interest cash flows associated with floating-rate debt, or &#8220;Other, Net&#8221; for portions reclassified relating to the remeasurement of the debt). The remaining gain or loss on the derivative instrument in excess of the cumulative change in the present value of future cash flows of the hedged item, if any, are recognized in the statement of income during the current period. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Recent Accounting Pronouncements </div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">There were no new accounting pronouncements, issued or effective during fiscal 2023, that have had or are expected to have a material impact on our consolidated financial statements. </div> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> </ix:nonNumeric></ix:continuation> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">F-16</div></div></div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> </div> </div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:nonNumeric name="us-gaap:BusinessCombinationDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771315"> <div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Note 2 &#8211; Acquisitions </div></div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Astro Machine </div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On August 4, 2022, we acquired Astro Machine LLC (&#8220;Astro Machine&#8221;), an Illinois-based manufacturer of printing equipment, including label printers, tabbers, conveyors, and envelope feeders, for aggregate consideration of $<ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="P08_04_2022To08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">17.1</ix:nonFraction> million. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The acquisition was accomplished pursuant to an Equity Interest Purchase Agreement dated as of August 4, 2022 (the &#8220;Purchase Agreement&#8221;) by and among us, GSND Holding Corporation (&#8220;GSND&#8221;), the parent company of Astro Machine, and Astro Machine. Pursuant to the Purchase Agreement, we purchased <ix:nonFraction name="us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired" contextRef="PAsOn08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:num-dot-decimal">100</ix:nonFraction>% of the issued and outstanding equity interests of Astro Machine from GSND for a purchase price of $<ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="P08_04_2022To08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">15.6</ix:nonFraction>&#160;million. The acquisition was funded using borrowings under our credit facility. We obtained a representation and warranty insurance policy and placed $<ix:nonFraction name="alot:PurchasePriceIntoAnEscrowAccount" contextRef="P08_04_2022To08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">300,000</ix:nonFraction> of the purchase price into an escrow account, which pursuant to the terms and conditions of the Purchase Agreement, are our sole recourse for breaches of representations and warranties by GSND. Upon the closing of the transaction, Astro Machine became a wholly owned subsidiary of AstroNova, Inc. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Concurrently with the signing of the Purchase Agreement, our newly acquired subsidiary, Astro Machine, entered into a Purchase and Sale Agreement with Selak Real Estate Limited Partnership (&#8220;SRE&#8221;), pursuant to which Astro Machine purchased certain real property assets of SRE for a purchase price, paid in cash, of $<ix:nonFraction name="us-gaap:PaymentsToAcquireLand" contextRef="P08_04_2022To08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.5</ix:nonFraction>&#160;million. These real estate assets are comprised of a <ix:nonFraction name="us-gaap:AreaOfLand" contextRef="PAsOn08_04_2022" unitRef="Unit_sqft" decimals="0" scale="0" format="ixt:num-dot-decimal">34,460</ix:nonFraction> square foot industrial manufacturing building (including offices) on <ix:nonNumeric name="alot:NumberOfAcresOfLand" contextRef="P02_01_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis">1.26</ix:nonNumeric> acres of land, which is Astro Machine&#8217;s principal place of business. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">This transaction is a business combination and was accounted for using the acquisition method of accounting prescribed by ASC 805, &#8220;Business Combinations&#8221; (&#8220;ASC 805&#8221;), whereby the results of operations, including the revenues and earnings of Astro Machine, are included in our financial statements from the date of acquisition. The purchase price of Astro Machine was allocated to the tangible and intangible assets acquired and liabilities assumed and recognized at their fair value based on widely accepted valuation techniques in accordance with ASC 820, &#8220;Fair Value Measurement,&#8221; as of the acquisition date. The process for estimating fair values requires the use of significant estimates, assumptions and judgments, including determining the timing and estimates of future cash flows and developing appropriate discount rates. The excess of the purchase price over the fair value of the net identified assets acquired and liabilities assumed was recorded as goodwill. ASC 805 establishes a measurement period to provide companies with a reasonable amount of time to obtain the information necessary to identify and measure various items in a business combination and cannot extend beyond one year from the acquisition date. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We completed our final fair value determination of the assets acquired and liabilities assumed during the fourth quarter of fiscal 2023. Since the initial preliminary estimates reported in the third quarter of fiscal 2023, we have adjusted certain amounts for the fair value of the assets acquired and liabilities assumed as a result of obtaining additional information that allowed us to determine the final purchase price allocation, as summarized in the table below. Measurement period adjustments were recognized in the reporting period in which the adjustments were determined and calculated as if the accounting had been completed at the acquisition date. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Total acquisition-related costs of $<ix:nonFraction name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" contextRef="P02_01_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.7</ix:nonFraction>&#160;million are included in the general and administrative expenses in our consolidated statement of income for the year ended January&#160;31, 2023.</div> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:exclude>F-17</ix:exclude></div></div></div> <ix:exclude><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div></ix:exclude> </ix:nonNumeric></div> </div> <ix:continuation id="TextSelection_75771315" continuedAt="TextSelectionAppend_75771315_1"><ix:exclude><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771315_1" continuedAt="TextSelectionAppend_75771315_2"><ix:exclude> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc" style="null;text-indent: 0px;">Table of Contents</a></div> </ix:exclude></ix:continuation> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771315_2" continuedAt="TextSelectionAppend_75771315_3"><ix:nonNumeric name="us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table sets forth the final purchase price allocation of the Astro Machine acquisition for the estimated fair value of the net asset acquired and liabilities assumed as of the date of acquisition: </div></div></div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:85%"></td>
<td style="vertical-align:bottom;width:7%"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr>
<td style="vertical-align: bottom; line-height: 8pt; font-size: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="text-indent: 0px; line-height: 8pt; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">(In thousands)</div><br/></div></td>
<td style="vertical-align: bottom; line-height: 8pt; font-size: 8pt;"> <div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"> <div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"> <div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"> <div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;">Cash</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="PAsOn08_04_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">91</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accounts Receivable</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" contextRef="PAsOn08_04_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,393</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Inventory</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" contextRef="PAsOn08_04_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,715</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Property, Plant and Equipment</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" contextRef="PAsOn08_04_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,200</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Identifiable Intangible Assets</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="PAsOn08_04_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,480</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Goodwill</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" contextRef="PAsOn08_04_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,730</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accounts Payable and Other Current Liabilities</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" contextRef="PAsOn08_04_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,484</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Purchase Price</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; border-bottom: 2.5pt double black;">$</td>
<td style="white-space: nowrap; vertical-align: bottom; border-bottom: 2.5pt double black;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" contextRef="PAsOn08_04_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,125</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr> </table> </ix:nonNumeric> </ix:continuation></div> </div> </div> </div> <div><div style="background-color:white;display: inline;"><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771315_3" continuedAt="TextSelectionAppend_75771315_4"><div style="margin-top: 12pt; margin-bottom: 6pt; text-indent: 4%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt;">The fair value of the intangible assets acquired was estimated by applying the income approach. This fair value measurement is based on significant inputs that are not observable in the market and therefore represent a Level&#160;3 measurement as defined in ASC 820, &#8220;Fair Value Measurement.&#8221; Key assumptions in estimating the fair value of the intangibles include (1)&#160;remaining useful life of the tradename/trademarks and customer relations (2)&#160;the royalty rate of <ix:nonFraction name="alot:FairValueOfIntangibleAssetsMeasurementInput" contextRef="PAsOn01_31_2023_MeasurementInputRoyaltyRateMemberusgaapMeasurementInputTypeAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:num-dot-decimal">0.75</ix:nonFraction>%, (3) customer attrition rate of <ix:nonFraction name="alot:FairValueOfIntangibleAssetsMeasurementInput" contextRef="PAsOn01_31_2023_MeasurementInputCustomerAttritionRateMemberusgaapMeasurementInputTypeAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:num-dot-decimal">18.0</ix:nonFraction>%, (4) discount rate of <ix:nonFraction name="alot:FairValueOfIntangibleAssetsMeasurementInput" contextRef="PAsOn01_31_2023_MeasurementInputDiscountRateMemberusgaapMeasurementInputTypeAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:num-dot-decimal">19.0</ix:nonFraction>% and (5)&#160;a range of revenue and net income projections for the fiscal years 2023-2026. </div><ix:nonNumeric name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table sets forth the fair value of the acquired identifiable intangible assets and related estimated useful lives: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px; padding-top: 0pt; padding-bottom: 0pt;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 76%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:75%"></td>
<td style="vertical-align:bottom;width:9%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:9%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="font-weight:bold;display:inline;width:100%;">Fair<br/> Value</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="font-weight:bold;display:inline;width:100%;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="font-weight:bold;display:inline;width:100%;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="font-weight:bold;display:inline;width:100%;">Useful&#160;Life<br/> (<div style="letter-spacing: 0px; top: 0px;;display:inline;">y</div>ears)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Customer Relations</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:FinitelivedIntangibleAssetsAcquired1" contextRef="P08_04_2022To08_04_2022_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,060</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonNumeric name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="P08_04_2022To08_04_2022_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">5</ix:nonNumeric></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Trademarks/Tradenames</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:FinitelivedIntangibleAssetsAcquired1" contextRef="P08_04_2022To08_04_2022_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">420</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonNumeric name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="P08_04_2022To08_04_2022_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">5</ix:nonNumeric></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Total</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:FinitelivedIntangibleAssetsAcquired1" contextRef="P08_04_2022To08_04_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,480</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr></table></ix:nonNumeric> <div style="margin-top: 12pt; margin-bottom: 6pt; text-indent: 4%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt;">The Customer Relations intangible asset represents the relationships that will be maintained with certain historical customers of Astro Machine. The trademark/tradename intangible assets reflect the industry reputation of the Astro Machine name recognition and the registered trademarks for the use of several marks and logos held by Astro Machine. </div><div style="margin-top: 12pt; margin-bottom: 6pt; text-indent: 4%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt;">Goodwill of $<ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-4" scale="6" format="ixt:num-dot-decimal">2.73</ix:nonFraction>&#160;million, which is not deductible for tax purposes, represents the excess of the purchase price over the estimated fair value assigned to the tangible and identifiable intangible assets acquired and liabilities assumed from Astro Machine. The goodwill recognized under ASC 805 is attributable to synergies which are expected to enhance and expand our overall product portfolio, opportunities in new and existing markets, future technologies that have yet to be determined and Astro Machine&#8217;s assembled work force. The carrying amount of the goodwill was allocated to the Product Identification (&#8220;PI&#8221;) segment. </div><ix:nonNumeric name="us-gaap:BusinessAcquisitionProFormaInformationTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The amounts of revenue and earnings before taxes included in our consolidated statement of income from the period August 4, 2022 (acquisition date) through January 31, 2023 are as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:85%"></td>
<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(In thousands)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Revenue</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:BusinessAcquisitionRevenue" contextRef="P08_04_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,515</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Earnings before Taxes</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:BusinessAcquisitionEarningBeforeTaxes" contextRef="P08_04_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,571</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table></ix:nonNumeric> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color:#ffffff;;display:inline;">Astro Machine results are reported as part of the PI segment. Proforma results are not provided, as disclosure of such amounts was impractical to determine as the acquired business had insufficient financial records and no audit </div></div></div><div style="background-color:#ffffff;;display:inline;">history prior to the transaction.</div></div><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color:#ffffff;;display:inline;">&#160;</div></div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color:#ffffff;;display:inline;"><ix:exclude>F-18</ix:exclude></div></div></div></div><ix:exclude><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div></ix:exclude></ix:continuation></div></div><ix:continuation id="TextSelectionAppend_75771315_4" continuedAt="TextSelectionAppend_75771315_5"><ix:exclude><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771315_5" continuedAt="TextSelectionAppend_75771315_6"><ix:exclude><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc" style="null;text-indent: 0px;">Table of Contents</a></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771315_6" continuedAt="TextSelectionAppend_75771315_7"><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc"></a></div></ix:continuation><div style="text-align: center;"><div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelectionAppend_75771315_7"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Honeywell Asset Purchase and License Agreement</div></div></div></div><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">On June&#160;30, 2022, AstroNova Inc. entered into an Asset Purchase and License Agreement with Honeywell Inc. (&#8220;New HW Agreement&#8221;) to acquire an exclusive, perpetual, world-wide license to manufacture Honeywell&#8217;s flight deck printers for the Boeing 787 aircraft.&#160;&#160;&#160;&#160;The New HW Agreement provides for royalty payments to Honeywell based on gross revenues from the sales of the printers, paper and repair services of the licensed products in perpetuity. The royalty rates vary based on the year in which they are paid or earned and as products are sold or as services provided and range from single-digit to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">mid-double-digit</div> percentages of gross revenue. The New HW Agreement included a provision for guaranteed minimum royalty payments to be paid in the event that the royalties earned by Honeywell do not meet the minimum for the preceding calendar year as follows: $<ix:nonFraction name="us-gaap:RoyaltyGuaranteesCommitmentsAmount" contextRef="PAsOn01_31_2023_RoyaltyPaymentsDueInNextTwelveMonthsMemberALOTRoyaltyPaymentsDueAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">100,000</ix:nonFraction> in 2024, $<ix:nonFraction name="us-gaap:RoyaltyGuaranteesCommitmentsAmount" contextRef="PAsOn01_31_2023_RoyaltyPaymentsDueYearTwoMemberALOTRoyaltyPaymentsDueAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">200,000</ix:nonFraction> in 2025, $<ix:nonFraction name="us-gaap:RoyaltyGuaranteesCommitmentsAmount" contextRef="PAsOn01_31_2023_RoyaltyPaymentsDueYearFourMemberALOTRoyaltyPaymentsDueAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:RoyaltyGuaranteesCommitmentsAmount" contextRef="PAsOn01_31_2023_RoyaltyPaymentsDueYearThreeMemberALOTRoyaltyPaymentsDueAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">233,000</ix:nonFraction></ix:nonFraction> in 2026 and 2027, and $<ix:nonFraction name="us-gaap:RoyaltyGuaranteesCommitmentsAmount" contextRef="PAsOn01_31_2023_RoyaltyPaymentsDueYearFiveMemberALOTRoyaltyPaymentsDueAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">234,000</ix:nonFraction> in 2028.</div><br/></div> <div style="clear:both;max-height:0pt;;text-indent: 0px;"></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">This transaction was evaluated under ASC 805, &#8220;Business Combinations,&#8221; and was accounted for as an asset acquisition. </div></div><br/></div><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The purchase price was allocated to the customer relationship intangible, which was the only asset acquired as a result of this transaction. This asset will be amortized over the useful life of the intangible. The minimum royalty payment obligation and related customer relation intangible were recorded at the present value of the minimum royalty payments. </div></div></div><div style="letter-spacing: 0px; top: 0px; background: none;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px; background: none; text-decoration: none;;display:inline;"> </div></div> <ix:nonNumeric name="us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The acquired identifiable intangible asset is as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: &quot;Times New Roman&quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 77%;"></td>
<td style="width: 8%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 8%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div>(In thousands)<div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fair<br/>Value</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Useful&#160;Life<br/>(Years)</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsFairValueDisclosure" contextRef="PAsOn01_31_2023_CustomerRelatedIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">530</ix:nonFraction></div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P02_01_2022To01_31_2023_CustomerRelatedIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">20</ix:nonNumeric></div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr></table></ix:nonNumeric> <div style="clear:both;max-height:0pt;;text-indent: 0px;"></div> <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"></div></div></div><div style="clear:both;max-height:0pt;"></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The minimum royalty payment due was discounted based on the payment schedule and applicable discount rate, resulting in an outstanding royalty obligation of $<ix:nonFraction name="alot:RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.5</ix:nonFraction> million as of January 31, 2023, including $<ix:nonFraction name="us-gaap:RoyaltyExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.1</ix:nonFraction> million recorded as a current liability. </div></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Additional royalties based on sales activity will be recorded in the period that the associated revenue is earned. During the fourth quarter of 2023, we incurred $<ix:nonFraction name="alot:RoyaltyGuaranteesCommitmentsAmountNonCurrent" contextRef="PAsOn01_31_2023_NonCurrentLiabilityMemberusgaapBalanceSheetLocationAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.1</ix:nonFraction> million <div style="display:inline;">in e</div>xcess royalty expense, which is included in cost of revenue in our consolidated statement of income for the year ended January 31, 2023. </div></div></div></ix:continuation><ix:nonNumeric name="us-gaap:RevenueFromContractWithCustomerTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771310"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Note 3&#8212;Revenue Recognition </div></div></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;text-indent: 0px;;display:inline;">We derive revenue from the sale of (i)&#160;hardware including, digital color la<div style="display:inline;">be</div>l printers and specialty OEM printing systems, portable data acquisition systems and airborne printers used in the flight deck and interior of commercial, business and military aircraft, (ii)&#160;related consumable supplies including paper, labels, tags, inks, toners and ribbons, (iii)&#160;repairs and maintenance of equipment and (iv)&#160;service agreements<div style="letter-spacing: 0px; top: 0px;;display:inline;">.</div></div></div></div></ix:nonNumeric></div></div><ix:continuation id="TextSelection_75771310" continuedAt="TextSelectionAppend_75771310_1"><ix:exclude> </ix:exclude></ix:continuation> <div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771310_1" continuedAt="TextSelectionAppend_75771310_2"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Revenues disaggregated by primary geographic markets and major product types are as follows: </div></div></div></div></div><ix:nonNumeric name="us-gaap:DisaggregationOfRevenueTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771313"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Primary geographical markets: </div></div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"><br/></div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:61%"></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">United States</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_USsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">91,917</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_USsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">68,185</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_USsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">70,911</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Europe</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_EuropeMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">31,021</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_EuropeMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">31,922</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_EuropeMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">29,029</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Canada</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_CAsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,393</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_CAsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,519</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_CAsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,574</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Asia</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_AsiaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,345</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_AsiaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,926</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_AsiaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,105</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Central and South America</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_CentralAndSouthAmericaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,589</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_CentralAndSouthAmericaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,271</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_CentralAndSouthAmericaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,950</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Other</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_OthersCountriesMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,262</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_OthersCountriesMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,657</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_OthersCountriesMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,464</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Total Revenue</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">142,527</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">117,480</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">116,033</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table></ix:nonNumeric></ix:continuation></div></div></div></div><div style="text-align: center;"><div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelection_75771313" continuedAt="TextSelectionAppend_75771313_1"><ix:continuation id="TextSelectionAppend_75771310_2" continuedAt="TextSelectionAppend_75771310_3"><div style="clear:both;max-height:0pt;"></div><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:exclude>F-19</ix:exclude></div></div></div></ix:continuation></ix:continuation></div></div><ix:continuation id="TextSelectionAppend_75771313_1" continuedAt="TextSelectionAppend_75771313_2"><ix:continuation id="TextSelectionAppend_75771310_3" continuedAt="TextSelectionAppend_75771310_4"><ix:exclude><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771310_4" continuedAt="TextSelectionAppend_75771310_5"><ix:exclude><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771310_5" continuedAt="TextSelectionAppend_75771310_6"><ix:exclude><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc" style="null;text-indent: 0px;">Table of Contents</a></div></ix:exclude></ix:continuation></ix:continuation> <div><div style="background-color:white;display: inline;"><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771310_6"><ix:continuation id="TextSelectionAppend_75771313_2"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Major product types: </div></div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:61%"></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Hardware</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_HardwareProductsMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,445</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_HardwareProductsMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">31,492</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_HardwareProductsMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">34,111</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Supplies</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_SuppliesMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">82,072</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_SuppliesMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">73,244</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_SuppliesMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">71,772</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Service and Other</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_ServiceAndOtherMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,010</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_ServiceAndOtherMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,744</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_ServiceAndOtherMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,150</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Revenue</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">142,527</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">117,480</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">116,033</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table></ix:continuation> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In December 2022, we entered into an amended contract with one of our T&amp;M customers that provided for a total payment of $<ix:nonFraction name="alot:SettlementOfContractClaim" contextRef="PAsOn12_31_2022_AerospaceCustomerMembersrtMajorCustomersAxis" unitRef="Unit_USD" decimals="-4" scale="6" format="ixt:num-dot-decimal">3.25</ix:nonFraction><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;text-indent: 0px;;display:inline;">&#160;million to be received as a result of our claims allowable under French law relating to additional component costs we have incurred and will continue to incur in order to supply aerospace printers under the contract for the period beginning in April 2022 and continuing through 2025. As of January&#160;31, 2023, $</div></div><ix:nonFraction name="alot:SettlementofContractClaimRevenueRecognized" contextRef="P02_01_2022To01_31_2023_AerospaceCustomerMembersrtMajorCustomersAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.1</ix:nonFraction>&#160;million was recognized as revenue in the consolidated income statement for the period ended January&#160;31, 2023, in proportion to the total estimated shipments through the end of the contract period. The balance is recorded within deferred revenue, both current and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-current,</div> and will be recognized into revenue based on shipments made of the printers during fiscal years 2024 and 2025. </div> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Contract Assets and Liabilities </div></div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We normally do not have contract assets, which are primarily unbilled accounts receivable that are conditional on something other than the passage of time. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our contract liabilities, which represent billings in excess of revenue recognized, are related to advanced billings for purchased service agreements and extended warranties. Contract liabilities were $<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">412,000</ix:nonFraction> and $<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">262,000</ix:nonFraction> at January&#160;31, 2023 and January&#160;31, 2022, respectively, and are recorded as current deferred revenue in the accompanying consolidated balance sheet. The decrease in the deferred revenue balance during the year ended January&#160;31, 2023 is primarily due to $<ix:nonFraction name="alot:ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">248,000</ix:nonFraction> of revenue recognized during the period that was included in the deferred revenue balance at January&#160;31, 2023 offset by cash payments received in advance of satisfying performance obligations. </div> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Contract Costs </div></div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We have determined that certain costs related to obtaining sales contracts for our aerospace printer products meet the requirement to be capitalized. In the second quarter of fiscal 2022, we extended the remaining useful life of these deferred costs from <ix:nonNumeric name="alot:CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:duryear">6</ix:nonNumeric> years to <ix:nonNumeric name="alot:CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" contextRef="P05_01_2021To07_31_2021_ChangeInAccountingMethodAccountedForAsChangeInEstimateMemberusgaapChangeInAccountingEstimateByTypeAxis" format="ixt-sec:duryear">20</ix:nonNumeric> years and changed the amortization method from units sold to the straight-line method. We believe these changes, based on <div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">the life of the aircraft under the applicable sales contracts, appropriately reflects a more systematic and rational approach. This change was treated as a change in<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">accounting estimate that is affected by a change in accounting principle. The impact on net income was immaterial for the period ended January&#160;</div>31<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, </div>2022<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">. The balance of these contract assets at </div>January 31, 2022<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, was $</div><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.3</ix:nonFraction><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;million, and in the first quarter of fiscal </div>2023<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> we incurred an additional $</div><ix:nonFraction name="us-gaap:CapitalizedContractCostNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.1</ix:nonFraction><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;million in contract costs that will be amortized over </div><ix:nonNumeric name="alot:AdditionalCapitalizedContractCostsAmortizationPeriodRemaining" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:duryear">19</ix:nonNumeric><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> years. For the years ended January&#160;</div>31<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, </div>2023<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, </div>2022<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> and </div>2021<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, we amortized contract costs of $</div><ix:nonFraction name="us-gaap:CapitalizedContractCostAmortization" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">75,000</ix:nonFraction><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, $</div><ix:nonFraction name="us-gaap:CapitalizedContractCostAmortization" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">60,000</ix:nonFraction> <div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">and $</div><ix:nonFraction name="us-gaap:CapitalizedContractCostAmortization" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">27,000</ix:nonFraction><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, respectively. The balance of deferred incremental direct costs net of accumulated amortization at January&#160;</div>31<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, </div>2023<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, was $</div><ix:nonFraction name="alot:CapitalizedContractCostNetLongTermAndShortTerm" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.4</ix:nonFraction><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;million, of which $</div><ix:nonFraction name="us-gaap:CapitalizedContractCostNetCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.1</ix:nonFraction><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;million is reported in other current assets and $</div><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.3</ix:nonFraction><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;million is reported in ot<div style="display:inline;">her as</div>sets in the accompanying consolidated balance sheet.</div></div></ix:continuation> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">F-20 </div></div></div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> </div></div><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:nonNumeric name="us-gaap:IntangibleAssetsDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771321"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Note 4&#8212;Intangibl<div style="display:inline;">e</div> Assets</div></div></div></div><ix:nonNumeric name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible assets are as follows: </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 9pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 38%;"></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="14" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31, 2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="14" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31, 2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">(In thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Gross<br/>Carrying<br/>Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated<br/>Amortization</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Currency<br/>Translation<br/>Adjustment</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/>Carrying<br/>Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Gross<br/>Carrying<br/>Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated<br/>Amortization</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Currency<br/>Translation<br/>Adjustment</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/>Carrying<br/>Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 9pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Miltope:</div></div></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"></div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer&#160;Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,100</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,777</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">323</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,100</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,515</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">585</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">RITEC:</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,830</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,623</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,207</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,830</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,557</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,273</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">TrojanLabel:</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Existing&#160;Technology</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2023_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,327</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2023_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,087</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" contextRef="PAsOn01_31_2023_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">94</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2023_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">334</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2022_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,327</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2022_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,767</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" contextRef="PAsOn01_31_2022_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">127</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2022_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">687</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Distributor&#160;Relations</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2023_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">937</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2023_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">588</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" contextRef="PAsOn01_31_2023_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">27</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2023_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">376</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2022_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">937</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2022_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">498</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" contextRef="PAsOn01_31_2022_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">46</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2022_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">485</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Honeywell:</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">27,773</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,913</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">15,860</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">27,243</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,073</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">16,170</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Astro Machine:</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,060</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">306</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,754</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">420</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">42</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">378</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 38%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible Assets, net</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">40,447</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,336</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">121</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">21,232</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">36,437</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,410</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">173</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,200</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 38%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"></div> </ix:nonNumeric> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">In the second quarter of 2022, we extended the remaining useful life of the pre-existing customer contract relationship intangibles for Honeywell International, Inc. (&#8220;Honeywell&#8221;) from </div></div><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" contextRef="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" format="ixt-sec:duryear">6</ix:nonNumeric> years to <ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" contextRef="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis" format="ixt-sec:duryear">20</ix:nonNumeric> years and for the RITEC intangibles we changed the amortization method which was based on revenue with a remaining life of <ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" contextRef="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis" format="ixt-sec:duryear">4</ix:nonNumeric> years to the straight-line method with a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" contextRef="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis" format="ixt-sec:duryear">20</ix:nonNumeric>-year</div> remaining life. We believe these changes, based on the life of the aircraft related to these intangibles, appropriately reflects a more systematic and rational approach to distributing the cost of these intangibles over their useful lives. The change in the amortization of the Honeywell customer contract relationship intangibles is being treated as a change in accounting estimate in 2022 and the change in the amortization of the RITEC customer contract relationship intangibles is being treated as a change in accounting estimate in 2022 that is effected by a change in accounting principle. The changes in amortization resulted in a $<ix:nonFraction name="alot:DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod" contextRef="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.8</ix:nonFraction>&#160;million decrease in amortization expense and a $<ix:nonFraction name="alot:IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization" contextRef="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.8</ix:nonFraction>&#160;million increase to net income for the period ended January&#160;31, 2022. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">There were <ix:nonFraction name="us-gaap:ImpairmentOfIntangibleAssetsFinitelived" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="INF" scale="3" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:ImpairmentOfIntangibleAssetsFinitelived" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="INF" scale="3" format="ixt-sec:numwordsen">no</ix:nonFraction></ix:nonFraction> impairments to intangible assets during the periods ended January&#160;31, 2023 and 2022. Amortization expense of $<ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.9</ix:nonFraction>&#160;million, $<ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">2.2</ix:nonFraction>&#160;million, and $<ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">4.1</ix:nonFraction>&#160;million with regard to acquired intangibles has been included in the consolidated statements of income for the years ended January&#160;31, 2023, 2022 and 2021, respectively.<br/></div> </ix:nonNumeric></div></div></div></div> <div><div style="background-color:white;display: inline;"><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelection_75771321"><ix:nonNumeric name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Estimated amortization expense for the next <div style="display:inline;">five</div> fiscal years is as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:64%"></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2024</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2025</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2026</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2027</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2028</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Estimated amortization expense</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,378</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,719</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,718</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,7192</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,281</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table></ix:nonNumeric></ix:continuation> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"></div></div><br/></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">F-21</div></div></div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> </div></div><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc" style="null;text-indent: 0px;">Table of Contents</a></div> <div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:nonNumeric name="us-gaap:InventoryDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 5&#8212;Inventories </div></div> <ix:nonNumeric name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The components of invento<div style="display:inline;">ries</div> are as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:74%"></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Materials and Supplies</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:InventoryRawMaterialsAndSupplies" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">38,387</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:InventoryRawMaterialsAndSupplies" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">22,709</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Work-in-Progress</div></div></div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:InventoryWorkInProcess" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,146</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:InventoryWorkInProcess" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,489</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Finished Goods</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">23,221</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,718</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:InventoryGross" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">62,754</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:InventoryGross" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">43,916</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Inventory Reserve</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:InventoryValuationReserves" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,430</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:InventoryValuationReserves" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,307</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">51,324</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">34,609</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> </ix:nonNumeric> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Finished goods inventory includes $<ix:nonFraction name="alot:InventoryDemonstrationEquipment" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">2.3</ix:nonFraction>&#160;million and $<ix:nonFraction name="alot:InventoryDemonstrationEquipment" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">3.4</ix:nonFraction>&#160;million of demonstration equipment at January&#160;31, 2023 and 2022, respectively. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 6&#8212;Property, Plant and Equipment </div></div> <ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Property, plant and equipment consist of the following: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:72%"></td>
<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Land and Land Improvements</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LandAndLandImprovements" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,304</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LandAndLandImprovements" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,004</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Buildings and Leasehold Improvements</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:BuildingsAndImprovementsGross" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,158</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:BuildingsAndImprovementsGross" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,666</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Machinery and Equipment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:MachineryAndEquipmentGross" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,960</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:MachineryAndEquipmentGross" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">23,238</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Computer Equipment and Software</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CapitalizedComputerSoftwareGross" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,972</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CapitalizedComputerSoftwareGross" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,913</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Gross Property, Plant and Equipment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">55,394</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">50,821</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accumulated Depreciation</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">41,106</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">39,380</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Property Plant and Equipment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,288</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,441</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> </ix:nonNumeric> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Depreciation expense on property, plant and equipment was $<ix:nonFraction name="us-gaap:Depreciation" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">2.0</ix:nonFraction>&#160;million for the year ended January&#160;31, 2023 and $<ix:nonFraction name="us-gaap:Depreciation" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.7</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:Depreciation" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.9</ix:nonFraction>&#160;million for the years ended January&#160;31, 2022 and 2021, respectively. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During fiscal 2022, we <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">wrote-off</div> our Oracle EnterpriseOne enterprise resource planning (&#8220;ERP&#8221;) system due to the full implementation of a new ERP system in our US operations.&#160;The book value and related accumulated depreciation of the Oracle EnterpriseOne ERP system along with the balance of the related prepaid service and maintenance contracts were removed from the accompanying consolidated balance sheet at January&#160;31, 2022, and we have recorded a net loss on the disposal of $<ix:nonFraction name="us-gaap:CapitalizedComputerSoftwareImpairments1" contextRef="P02_01_2021To01_31_2022_NonoperatingIncomeExpenseMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">696,000</ix:nonFraction>, which is included in other income (expense) in the accompanying consolidated income statement for the year ended January&#160;31, 2022. </div> </ix:nonNumeric> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">F-22 </div> </div></div> <div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div> <hr style="color:#999999;height:3px;width:100%"/> <div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:nonNumeric name="us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 7&#8212;Accrued Expenses </div></div> <ix:nonNumeric name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"></div></div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued expenses consist of the following: </div></div></div> <div style="letter-spacing: 0px; top: 0px; background: none;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px; background: none; text-decoration: none;;display:inline;"> </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><br/></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 78%;"></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="font-size: 0px;">
<td style="width:78%"></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Warranty</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,072</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">834</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Professional Fees</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:AccruedProfessionalFeesCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">311</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:AccruedProfessionalFeesCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">411</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Freight</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:AccruedFreight" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:AccruedFreight" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">347</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><span style="-sec-ix-hidden:hidden75771655">Lease</span> <span style="-sec-ix-hidden:hidden75771656">Liability</span></div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">275</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">327</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accrued Property&#160;&amp; Sales Tax</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:AccruedPayrollAndSalesTaxesCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">187</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:AccruedPayrollAndSalesTaxesCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">316</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Stockholder Relation Fees</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:AccruedStockHolderRelationFees" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">86</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:AccruedStockHolderRelationFees" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">102</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Dealer Commissions</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:AccruedSalesCommissionCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">78</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:AccruedSalesCommissionCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">139</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Accrued Expenses</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherAccruedLiabilitiesCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,299</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherAccruedLiabilitiesCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,637</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 78%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,308</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,113</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 78%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"></div> </ix:nonNumeric></ix:nonNumeric> <ix:nonNumeric name="us-gaap:DebtDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771333"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 8&#8212;Credit Agreement and Long-Term Debt </div></div> <div style="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Credit Agreement </div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In connection with the purchase of Astro Machine, on August 4, 2022, we entered into a Second Amendment to Amended and Restated Credit Agreement (the &#8220;Second Amendment&#8221;) with Bank of America, N.A., as lender (the &#8220;Lender&#8221;). The Second Amendment amended the Amended and Restated Credit Agreement dated as of July 30, 2020, as amended by the First Amendment to Amended and Restated Credit Agreement, dated as of March 24, 2021, and the LIBOR Transition Amendment, dated as of December 24, 2021 (the &#8220;Existing Credit Agreement,&#8221; and the Existing Credit Agreement as amended by the Second Amendment, the &#8220;Amended Credit Agreement&#8221;), between the Company and the Lender. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Amended Credit Agreement provides for (i)&#160;a new term loan in the principal amount of $<ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="PAsOn08_04_2022_AdditionalTermLoanAvailedMemberALOTDetailsOneAxis_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis_TermLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">6.0</ix:nonFraction>&#160;million, which term loan was in addition to the existing term loan outstanding under the Existing Credit Agreement in the principal amount of $<ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="PAsOn01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_BeforeAmendmentToTheCreditAgreementMemberALOTDetailsAxis_TermLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">9.0</ix:nonFraction>&#160;million as of the effective date of the Second Amendment, and (ii)&#160;an increase in the aggregate principal amount of the revolving credit facility available thereunder from $<ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="PAsOn01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_BeforeAmendmentToTheCreditAgreementMemberALOTDetailsAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">22.5</ix:nonFraction>&#160;million to $<ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="PAsOn01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">25.0</ix:nonFraction>&#160;million. At the closing of the Second Amendment, we borrowed the entire $<ix:nonFraction name="us-gaap:ProceedsFromLongTermLinesOfCredit" contextRef="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">6.0</ix:nonFraction>&#160;million term loan and $<ix:nonFraction name="us-gaap:ProceedsFromLongTermLinesOfCredit" contextRef="P08_04_2022To08_04_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">12.4</ix:nonFraction>&#160;million under the revolving credit facility, and the proceeds of such borrowings were used in part to pay the purchase price payable under the Purchase Agreement and certain related transaction costs. The revolving credit facility may otherwise be used for corporate purposes. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Amended Credit Agreement requires that the term loan be paid in quarterly installments on the last day of each of our fiscal quarters over the term of the Amended Credit Agreement on the following repayment schedule: the principal amount of each quarterly installment required to be paid on the last day of each of our fiscal quarters ending on or about October 31, 2022 through July 31, 2023 is $<ix:nonFraction name="us-gaap:DebtInstrumentPeriodicPaymentPrincipal" contextRef="P10_31_2022To07_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_TermLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">375,000</ix:nonFraction>; and the principal amount of each quarterly installment required to be paid on the last day of each of our fiscal quarters ending on or about October 31, 2023 through April 30, 2027 is $<ix:nonFraction name="us-gaap:DebtInstrumentPeriodicPaymentPrincipal" contextRef="P10_31_2023To04_30_2027_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_TermLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">675,000</ix:nonFraction>. The entire remaining principal balance of the term loan is required to be paid on August 4, 2027. We may voluntarily prepay the term loan, in whole or in part, from time to time without premium or penalty (other than customary breakage costs, if applicable). We may repay borrowings under the revolving credit facility at any time without premium or penalty (other than customary breakage costs, if applicable), but in any event no later than August 4, 2027, and any outstanding revolving loans thereunder will be due and payable in full, and the revolving credit facility will terminate, on such date. We may reduce or terminate the revolving line of credit at any time, subject to certain thresholds and conditions, without premium or penalty. <br/></div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The interest rates under the Amended Credit Agreement are as follows: the term loan and revolving credit loans bear interest at a rate per annum equal to, at our option, either (a)&#160;the BSBY Rate as defined in the </div></div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:exclude>F-23</ix:exclude></div></div></div> </ix:nonNumeric></div></div> <ix:continuation id="TextSelection_75771333" continuedAt="TextSelectionAppend_75771333_1"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation> <ix:continuation id="TextSelectionAppend_75771333_1" continuedAt="TextSelectionAppend_75771333_2"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771333_2" continuedAt="TextSelectionAppend_75771333_3"><ix:exclude> <div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div> </ix:exclude></ix:continuation></div></div> <div><div style="background-color:white;display: inline;"><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771333_3" continuedAt="TextSelectionAppend_75771333_4"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; margin-left: 0in;">Amended Credit Agreement (or, in the case of revolving credit loans denominated in a currency other than U.S. Dollars, the applicable quoted rate), plus a margin that varies within a range of <ix:nonFraction name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" contextRef="P02_01_2022To01_31_2023_LondonInterbankOfferedRateLIBORMemberusgaapVariableRateAxis_MinimumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_pure" decimals="4" scale="-2" format="ixt:num-dot-decimal">1.60</ix:nonFraction>% to <ix:nonFraction name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" contextRef="P02_01_2022To01_31_2023_LondonInterbankOfferedRateLIBORMemberusgaapVariableRateAxis_MaximumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_pure" decimals="4" scale="-2" format="ixt:num-dot-decimal">2.50</ix:nonFraction>% based on our consolidated leverage ratio, or (b)&#160;a fluctuating reference rate equal to the highest of (i)&#160;the federal fund rate plus <ix:nonFraction name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" contextRef="P02_01_2022To01_31_2023_FederalFundsEffectiveSwapRateMemberusgaapVariableRateAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_pure" decimals="4" scale="-2" format="ixt:num-dot-decimal">0.50</ix:nonFraction>%, (ii) Bank of America&#8217;s publicly announced prime rate, (iii)&#160;the BSBY Rate plus <ix:nonFraction name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" contextRef="P02_01_2022To01_31_2023_LondonInterbankOfferedRateLIBORMemberusgaapVariableRateAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_pure" decimals="4" scale="-2" format="ixt:num-dot-decimal">1.00</ix:nonFraction>%, or (iv) <ix:nonNumeric name="us-gaap:DebtInstrumentInterestRateBasisForEffectiveRate" contextRef="P02_01_2022To01_31_2023_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">0.50</ix:nonNumeric>%, plus a margin that varies within a range of <ix:nonFraction name="alot:DebtInstrumentAdditionalBasisSpread" contextRef="P02_01_2022To01_31_2023_MinimumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_pure" decimals="4" scale="-2" format="ixt:num-dot-decimal">0.60</ix:nonFraction>% to <ix:nonFraction name="alot:DebtInstrumentAdditionalBasisSpread" contextRef="P02_01_2022To01_31_2023_MaximumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_pure" decimals="4" scale="-2" format="ixt:num-dot-decimal">1.50</ix:nonFraction>% based on our consolidated leverage ratio. In addition to certain other fees and expenses that we are required to pay to the Lender, we are required to pay a commitment fee on the undrawn portion of the revolving credit facility that varies within a range of <ix:nonFraction name="us-gaap:LineOfCreditFacilityCommitmentFeePercentage" contextRef="P02_01_2022To01_31_2023_MinimumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_pure" decimals="4" scale="-2" format="ixt:num-dot-decimal">0.15</ix:nonFraction>% and <ix:nonFraction name="us-gaap:LineOfCreditFacilityCommitmentFeePercentage" contextRef="P02_01_2022To01_31_2023_MaximumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_pure" decimals="4" scale="-2" format="ixt:num-dot-decimal">0.35</ix:nonFraction>% based on our consolidated leverage ratio. The loans under the Amended Credit Agreement are subject to certain mandatory prepayments, subject to various exceptions, from (a)&#160;net cash proceeds from certain dispositions of property, (b) net cash proceeds from certain issuances of equity, (c)&#160;net cash proceeds from certain issuances of additional debt and (d) net cash proceeds from certain extraordinary receipts. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Amounts repaid under the revolving credit facility may be reborrowed, subject to our continued compliance with the Amended Credit Agreement. No amount of the term loan that is repaid may be reborrowed. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We must comply with various customary financial and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-financial</div> covenants under the Amended Credit Agreement. The financial covenants under the Amended Credit Agreement consist of a maximum consolidated leverage ratio, a minimum consolidated fixed charge coverage ratio and a minimum consolidated asset coverage ratio. The primary <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-financial</div> covenants limit our and our subsidiaries&#8217; ability to incur future indebtedness, to place liens on assets, to pay dividends or distributions on our or our subsidiaries&#8217; capital stock, to repurchase or acquire our or our subsidiaries&#8217; capital stock, to conduct mergers or acquisitions, to sell assets, to alter our or our subsidiaries&#8217; capital structure, to make investments and loans, to change the nature of our or our subsidiaries&#8217; business, and to prepay subordinated indebtedness, in each case subject to certain exceptions and thresholds as set forth in the Amended Credit Agreement, certain of which provisions were modified by the Second Amendment. As of January&#160;31, 2023, we believe we are in compliance with all of the covenants in the Credit Agreement. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Lender is entitled to accelerate repayment of the loans and to terminate its revolving credit commitment under the Amended Credit Agreement upon the occurrence of any of various customary events of default, which include, among other events, the following (which are subject, in some cases, to certain grace periods): failure to pay when due any principal, interest or other amounts in respect of the loans, breach of any of our covenants or representations under the loan documents, default under any other of our or our subsidiaries&#8217; significant indebtedness agreements, a bankruptcy, insolvency or similar event with respect to us or any of our subsidiaries, a significant unsatisfied judgment against us or any of our subsidiaries, or a change of control. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our obligations under the Amended Credit Agreement continue to be secured by substantially all of our personal property assets (including a pledge of the equity interests we hold in ANI ApS, AstroNova GmbH and AstroNova SAS), subject to certain exceptions, and by a mortgage on our owned real property in West Warwick, Rhode Island, and are guaranteed by, and secured by substantially all of the personal property assets of Astro Machine. </div><div style="margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Summary of Outstanding Debt </div></div><div style="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Revolving Credit Facility </div></div></div><div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During fiscal 2023 we borrowed a net of $<ix:nonFraction name="us-gaap:LineOfCredit" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">15.9</ix:nonFraction>&#160;million on our revolving line of credit. The balance outstanding under the revolving line of credit bore interest at a weighted average rate of <ix:nonFraction name="us-gaap:LongTermDebtWeightedAverageInterestRateOverTime" contextRef="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_pure" decimals="4" scale="-2" format="ixt:num-dot-decimal">6.71</ix:nonFraction>% and <ix:nonFraction name="us-gaap:LongTermDebtWeightedAverageInterestRateOverTime" contextRef="P02_01_2021To01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_pure" decimals="4" scale="-2" format="ixt:num-dot-decimal">4.10</ix:nonFraction>% for the years ended January&#160;31, 2023 and January&#160;31, 2022, respectively, and we incurred $<ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_OtherExpenseMemberusgaapIncomeStatementLocationAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">752,000</ix:nonFraction> and $<ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="P02_01_2021To01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_OtherExpenseMemberusgaapIncomeStatementLocationAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,000</ix:nonFraction> for interest on this obligation during the years ended January&#160;31, 2023 and January&#160;31, 2022, respectively. Commitment fees on the undrawn portion of our revolving credit facility of $<ix:nonFraction name="us-gaap:LineOfCreditFacilityCommitmentFeeAmount" contextRef="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_OtherExpenseMemberusgaapIncomeStatementLocationAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">30,000</ix:nonFraction> and $<ix:nonFraction name="us-gaap:LineOfCreditFacilityCommitmentFeeAmount" contextRef="P02_01_2021To01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_OtherExpenseMemberusgaapIncomeStatementLocationAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">50,000</ix:nonFraction> were incurred for the yea<div style="background-color:#ffffff;;display:inline;">rs ended January&#160;31</div><div style="background-color:#ffffff;;display:inline;">, 2023</div><div style="background-color:#ffffff;;display:inline;"> and January&#160;31</div><div style="background-color:#ffffff;;display:inline;">, 2022</div><div style="background-color:#ffffff;;display:inline;">, respectively. Both the interest expense and commitment fees are included as interest expense in the accompanying consolidated income statement for all periods presented. At January&#160;31</div><div style="background-color:#ffffff;;display:inline;">, 2023</div><div style="background-color:#ffffff;;display:inline;">, $</div><div style="background-color:#ffffff;;display:inline;"><ix:nonFraction name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" contextRef="PAsOn01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">9.1</ix:nonFraction></div><div style="background-color:#ffffff;;display:inline;">&#160;million remains available for borrowing under our revolving line of credit.</div></div><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:exclude>F-24</ix:exclude></div></div></div><ix:exclude><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div></ix:exclude></ix:continuation></div></div><ix:continuation id="TextSelectionAppend_75771333_4" continuedAt="TextSelectionAppend_75771333_5"><ix:exclude><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771333_5" continuedAt="TextSelectionAppend_75771333_6"><ix:exclude><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div></ix:exclude></ix:continuation><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771333_6"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Long-Term Debt </div></div></div></div><ix:nonNumeric name="us-gaap:ScheduleOfDebtTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Long-term debt in the accompanying condensed consolidated balance sheets under the Amended Credit Agreement is as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:74%"></td>
<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">USD Term Loan (6.78% as of January&#160;31, 2023); maturity date of August 4, 2027</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DebtInstrumentCarryingAmount" contextRef="PAsOn01_31_2023_TermLoanDueAugustFourthTwoThousandAndTwentySevenMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,250</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DebtInstrumentCarryingAmount" contextRef="PAsOn01_31_2022_TermLoanDueAugustFourthTwoThousandAndTwentySevenMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">USD Term Loan (2.35% as of January&#160;31, 2022); maturity date of September&#160;30, 2025</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DebtInstrumentCarryingAmount" contextRef="PAsOn01_31_2023_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DebtInstrumentCarryingAmount" contextRef="PAsOn01_31_2022_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,250</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DebtInstrumentCarryingAmount" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,250</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DebtInstrumentCarryingAmount" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,250</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Debt Issuance Costs, net of accumulated amortization</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredFinanceCostsNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">110</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredFinanceCostsNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">96</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Current Portion of Term Loan</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:LongTermDebtCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,100</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:LongTermDebtCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,000</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Long-Term Debt</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,040</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,154</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> </ix:nonNumeric> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During the years ended January&#160;31, 2023, 2022 and 2021, we recognized $<ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.6</ix:nonFraction>&#160;million, $<ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.3</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.5</ix:nonFraction>&#160;million of interest expense on our long-term debt, respectively, which was included in interest expense in the accompanying consolidated income statement for all periods presented. </div> <ix:nonNumeric name="us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The schedule of required principal payments remaining on our long-term debt outstanding as of January&#160;31, 2023 is as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:68%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:85%"></td>
<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2024</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" contextRef="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,100</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2025</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" contextRef="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,700</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2026</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" contextRef="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,700</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2027</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" contextRef="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,700</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2028</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" contextRef="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,050</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,250</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> </ix:nonNumeric></ix:continuation> <ix:nonNumeric name="alot:DisclosureForPaycheckProtectionProgramLoanTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 9&#8212;Paycheck Protection Program Loan </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On May&#160;6, 2020, we entered into a loan agreement with, and executed a promissory note in favor of Greenwood pursuant to which we borrowed $<ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="PAsOn05_06_2020_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">4.4</ix:nonFraction>&#160;million (the &#8220;PPP Loan&#8221;) from Greenwood under the Paycheck Protection Program (&#8220;PPP&#8221;) administered by the SBA and authorized by the CARES Act. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><ix:nonNumeric name="us-gaap:DebtInstrumentPaymentTerms" contextRef="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis">The PPP Loan, originally scheduled to mature on <ix:nonNumeric name="us-gaap:DebtInstrumentMaturityDate" contextRef="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" format="ixt:date-monthname-day-year-en">May 6, 2022</ix:nonNumeric>, was unsecured and bore interest at a rate of <ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="PAsOn01_31_2023_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">1.0</ix:nonFraction>% per annum, accruing from the loan date.</ix:nonNumeric> </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On June&#160;15, 2021, Greenwood notified us that the SBA approved our application for forgiveness of the entire $<ix:nonFraction name="us-gaap:DebtInstrumentDecreaseForgiveness" contextRef="P06_15_2021To06_15_2021_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">4.4</ix:nonFraction>&#160;million principal balance of our PPP Loan and all accrued interest thereon. As a result, in the second quarter of fiscal 2022, we recorded a $<ix:nonFraction name="us-gaap:GainsLossesOnExtinguishmentOfDebt" contextRef="P05_02_2021To07_31_2021_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">4.5</ix:nonFraction>&#160;million gain on extinguishment of debt, which is included in the accompanying consolidated income statement for the period ended January&#160;31, <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2022. </div></div></div></ix:nonNumeric> <ix:nonNumeric name="us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771337"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Note 10&#8212;Derivative Financial Instruments and Risk Management </div></div></div></div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">In 2017, we entered into a cross-currency interest rate swap and an interest rate swap to manage the interest rate risk. </div></div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:exclude>F-25</ix:exclude></div></div></div> </ix:nonNumeric></div></div><ix:continuation id="TextSelection_75771337" continuedAt="TextSelectionAppend_75771337_1"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771337_1" continuedAt="TextSelectionAppend_75771337_2"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771337_2" continuedAt="TextSelectionAppend_75771337_3"><ix:exclude><div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents<br/></a></div></ix:exclude></ix:continuation></div></div> <div><div style="background-color:white;display: inline;"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771337_3"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On July 30, 2020, we terminated these two swaps. The terms of the Amended and Restated Credit Agreement dated as of July 30, 2020, caused those swaps to cease to be effective hedges of the underlying exposures. The termination of the swaps was contracted immediately prior to the end of the second quarter of fiscal 2021 at a cash cost of approximately $<ix:nonFraction name="alot:CashPaidTerminationOfSwaps" contextRef="P08_01_2021To10_30_2021_CashFlowHedgingMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.7</ix:nonFraction>&#160;million which was settled in the third quarter of fiscal 2021. Upon termination, the remaining balance of $<ix:nonFraction name="us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" contextRef="P08_01_2021To10_30_2021_CashFlowHedgingMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">58,000</ix:nonFraction> in accumulated other comprehensive loss related to the cross-currency interest rate swap was reclassified into earnings as the forecasted foreign currency interest payments will not occur. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The $<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax" contextRef="P07_30_2020To07_30_2020_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.2</ix:nonFraction>&#160;million remaining balance in accumulated other comprehensive loss related to the interest rate swap was amortized into earnings through the original term of the hedge relationship as the underlying floating interest rate debt still exists. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">At January&#160;31, 2023, we have fully reclassified all of the net losses on the frozen other comprehensive income balance from accumulated other comprehensive loss to earnings associated with the terminated interest rate swap due to the payment of variable interest associated with the floating interest rate debt. </div><ix:nonNumeric name="us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771338"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The following tables present the impact of the derivative instruments in our consolidated financial statements for the years ended January&#160;31, 2023 and 2022: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:41%"></td>
<td style="vertical-align:bottom;width:7%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:7%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:7%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:7%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:7%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="18" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Years Ended</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td rowspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="font-weight:bold;display:inline;">Cash Flow Hedge</div></div><div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">(In thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amount of Gain(Loss)<br/> Recognized in OCI<br/> on<br/> Derivative</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" rowspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Location&#160;of&#160;Gain&#160;(Loss)<br/> Reclassified&#160;from<br/> Accumulated&#160;OCI&#160;into<br/> Income</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amount of Gain (Loss)<br/> Reclassified from<br/> Accumulated&#160;OCI&#160;into<br/> Income</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Swap&#160;contracts</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" contextRef="P02_01_2022To01_31_2023_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" contextRef="P02_01_2021To01_31_2022_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonNumeric name="us-gaap:DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI" contextRef="P02_01_2022To01_31_2023_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis">Other Income</ix:nonNumeric></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" contextRef="P02_01_2022To01_31_2023_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">59</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" contextRef="P02_01_2021To01_31_2022_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">79</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> </ix:nonNumeric></ix:continuation><ix:continuation id="TextSelection_75771338"> </ix:continuation> <ix:nonNumeric name="alot:DisclosureForEmployeeRetentionCreditTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771708"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 11&#8212;Employee Retention Credit </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The CARES Act provides an employee retention credit (&#8220;ERC&#8221;) that is a refundable tax credit against certain employer taxes. On December&#160;27, 2020, Congress enacted the Taxpayer Certainty and Disaster Tax Relief Act of 2020, which amended and extended ERC availability under Section&#160;2301 of the CARES Act. Before the enactment of the Taxpayer Certainty and Disaster Tax Relief Act of 2020, we were ineligible for the ERC because we received the PPP Loan. Following enactment of the Taxpayer Certainty and Disaster Tax Relief Act of 2020, we and other businesses that received loans under that program became retroactively eligible for the ERC. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">As a result of the foregoing legislation, we were eligible to claim a refundable tax credit against the employer share of Social Security taxes equal to seventy percent (<ix:nonFraction name="alot:PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages" contextRef="P01_01_2021To06_30_2021_CaresActMemberusgaapUnusualOrInfrequentItemAxis" unitRef="Unit_pure" decimals="2" scale="-2" sign="-" format="ixt:num-dot-decimal">70</ix:nonFraction>%) of the qualified wages that we paid to our employees between December&#160;31, 2020 and June&#160;30, 2021. Qualified wages are limited to $<ix:nonFraction name="alot:ThresholdQualifiedWagesPerEmployeePerCalendarQuarter" contextRef="P01_01_2021To06_30_2021_CaresActMemberusgaapUnusualOrInfrequentItemAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,000</ix:nonFraction>&#160;per employee per calendar quarter in 2021 for a maximum ERC per employee of $<ix:nonFraction name="alot:MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter" contextRef="P01_01_2021To06_30_2021_CaresActMemberusgaapUnusualOrInfrequentItemAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,000</ix:nonFraction>&#160;per calendar quarter in 2021. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">We evaluated our eligibility for the ERC in the second quarter of calendar year 2021</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">. In order to qualify for the ERC, we needed to experience a </div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonFraction name="alot:PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit" contextRef="P07_01_2021To07_31_2021_CaresActMemberusgaapUnusualOrInfrequentItemAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:num-dot-decimal">20</ix:nonFraction></div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">% reduction in gross receipts from either (1)</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">&#160;the same quarter in calendar year 2019</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"> or (2)</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">&#160;the immediately preceding quarter to the corresponding calendar quarter in 2019</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">. We determined that we qualified for the employee retention credit under the first scenario for wages paid in calendar year 2020</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"> and the first calendar quarter of 2021</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">. In the second quarter of the current year, we amended certain payroll tax filings and applied for a refund of $</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonFraction name="alot:EmployeeRetentionCreditReceived" contextRef="P03_22_2022To03_22_2022_CaresActMemberusgaapUnusualOrInfrequentItemAxis_PrepaidExpensesAndOtherCurrentAssetsMemberusgaapBalanceSheetLocationAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">3.1</ix:nonFraction></div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">million. Since there is no US&#160;GAAP guidance for </div><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">for-profit</div></div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"> business entities that receive government assistance that is not in the form of a loan, an income tax credit or revenue from a contract with a customer, we determined the appropriate accounting treatment by analogy to other guidance. We accounted for the&#160;employee&#160;retention&#160;credit&#160;by analogy to International Accounting Standards (IAS) 20, Accounting for Government Grants and Disclosure of Government Assistance, of </div></div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"><ix:exclude>F-26</ix:exclude></div></div></div></div> <ix:exclude><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div></ix:exclude> </ix:nonNumeric></div><ix:continuation id="TextSelection_75771708" continuedAt="TextSelectionAppend_75771708_1"><ix:exclude><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771708_1" continuedAt="TextSelectionAppend_75771708_2"><ix:exclude> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc"><span style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">Table of Contents</span></a></div> </ix:exclude></ix:continuation> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771708_2" continuedAt="TextSelectionAppend_75771708_3"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">International Financial Reporting Standards (IFRS). Under an IAS 20 analogy, a business entity would recognize the credit on a systematic basis over the periods in which the entity recognizes the payroll expenses for which the grant (i.e., tax credit) is intended to compensate when there is reasonable assurance (i.e., it is probable) that the entity will comply with any conditions attached to the grant and the grant (i.e., tax credit) will be received. </div></div></div></div></ix:continuation></div> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771708_3"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">We recorded a $</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonFraction name="alot:ErcReceivables" contextRef="PAsOn10_30_2021" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">3.1</ix:nonFraction></div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">&#160;million receivable in the second quarter of fiscal 2022</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"> for the ERC receivable, which was outstanding as of January&#160;31</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">, 2022</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"> and is included as such in the accompanying consolidated balance sheet. The $</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonFraction name="alot:EmployeeRetentionCredit" contextRef="P02_01_2022To01_31_2023_PrepaidExpensesAndOtherCurrentAssetsMemberusgaapBalanceSheetLocationAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">3.1</ix:nonFraction></div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">&#160;mil</div>lion of ERCs was recognized as a reduction in employer payroll taxes and allocated to the financial statement captions from which the employee&#8217;s taxes were originally incurred. As a result, we recorded a reduction in expenses of $<ix:nonFraction name="alot:EmployeeRetentionCreditReceivables" contextRef="P10_30_2021To10_30_2021_CostOfSalesMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.7</ix:nonFraction>&#160;million in cost of revenue, $<ix:nonFraction name="alot:EmployeeRetentionCreditReceivableSellingAndMarketing" contextRef="P02_01_2022To01_31_2023_SellingAndMarketingExpenseMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.8</ix:nonFraction>&#160;million in selling and marketing, $<ix:nonFraction name="alot:EmployeeRetentionCreditReceivableResearchAndDevelopment" contextRef="P10_30_2021To10_30_2021_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.3</ix:nonFraction>&#160;million in research and development and $<ix:nonFraction name="alot:EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses" contextRef="P02_01_2022To01_31_2023_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.3</ix:nonFraction>&#160;million in general and administrative which is reflected in the accompanying consolidated income statement for the year ended January&#160;31, 2022. On March&#160;22, 2022, we received the $<ix:nonFraction name="alot:ErcReceivables" contextRef="PAsOn03_22_2022" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">3.1</ix:nonFraction>&#160;million for the ERC. </div></ix:continuation><ix:nonNumeric name="alot:DisclosureForTheHoneywellRoyaltyObligationTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 12&#8212;Royalty Obligation </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In fiscal 2018, AstroNova, Inc. entered into an Asset Purchase and License Agreement with Honeywell International, Inc. to acquire an exclusive, perpetual, world-wide license to manufacture Honeywell&#8217;s narrow-format flight deck printers for two aircraft families along with certain inventory used in the manufacturing of the licensed printers. The purchase price included a guaranteed minimum royalty payment of $<ix:nonFraction name="alot:MinimumRoyaltyPaymentObligation" contextRef="PAsOn01_31_2018_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">15.0</ix:nonFraction>&#160;million, to be paid in quarterly installments over a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="alot:PaymentTermPeriod" contextRef="P01_31_2018To01_31_2018_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" format="ixt-sec:durwordsen">ten-year</ix:nonNumeric></div> period. Royalty payments are based on gross revenues from the sales of the printers, paper and repair services of the licensed products. The royalty rates vary based on the year in which they are paid or earned and product sold or service provided, and range from single-digit to mid double-digit percentages of gross revenue. </div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;text-indent: 0px;;display:inline;">The guaranteed minimum royalty payment obligation was recorded at the present value of the minimum annual royalty payments. As of January&#160;31, 2023, we had paid an aggregate of $</div></div><ix:nonFraction name="alot:GuaranteedMinimumRoyaltyPayments" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">9.5</ix:nonFraction>&#160;million of the guaranteed minimum royalty obligation. At January&#160;31, 2023, the current portion of the outstanding guaranteed minimum royalty obligation of $<ix:nonFraction name="alot:RoyaltyObligationCurrent" contextRef="PAsOn01_31_2023_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.6</ix:nonFraction>&#160;million is to be paid over the next twelve months and is reported as a current liability and the remainder of $<ix:nonFraction name="alot:RoyaltyObligationNonCurrent" contextRef="PAsOn01_31_2023_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">3.0</ix:nonFraction>&#160;million is reported as a long-term liability on our consolidated balance sheet. In addition to the guaranteed minimum royalty payments, for the periods ended January&#160;31, 2023 and January&#160;31, 2022, we also incurred excess royalty expense of $<ix:nonFraction name="alot:ExcessRoyaltyPayments" contextRef="P02_01_2022To01_31_2023_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.3</ix:nonFraction>&#160;million and $<ix:nonFraction name="alot:ExcessRoyaltyPayments" contextRef="P02_01_2021To01_31_2022_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.5</ix:nonFraction>&#160;million, respectively, which is included in cost of revenue in our consolidated statements of income. A total of $<ix:nonFraction name="alot:AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" contextRef="PAsOn01_31_2023_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.4</ix:nonFraction>&#160;million of excess royalty is payable and reported as a current liability on our consolidated balance sheet at January&#160;31, 2023.</div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">In fiscal 2023, AstroNova, Inc. entered into a second Asset Purchase and License Agreement with Honeywell International, Inc. as further discussed in Note 2. </div></div></div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:LesseeOperatingLeasesTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771418"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 13&#8212;Leases </div></div> <div style="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">We enter into lease contracts for certain of our facilities at various locations worldwide. Our leases have remaining lease terms of one to six years, some of which include options to extend the lease term for periods of up to five years when it is reasonably certain that we will exercise such options. </div> <ix:nonNumeric name="alot:ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Balance sheet and other information related to our leases is as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:43%"></td>
<td style="vertical-align:bottom;width:7%"></td>
<td></td>
<td style="vertical-align:bottom;width:7%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:7%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="font-weight:bold;display:inline;">Operating Leases</div></div><div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">(In thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Balance&#160;Sheet&#160;Classification</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Lease Assets</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap;text-align:center;">Right&#160;of&#160;Use&#160;Assets</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">794</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,094</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Lease Liabilities&#8212;Current</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap;text-align:center;">Other&#160;Accrued&#160;Expenses</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">275</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">327</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Lease Liabilities&#8212;Long Term</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap;text-align:center;">Lease Liabilities</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">555</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">808</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table></ix:nonNumeric> </ix:nonNumeric></div> </div></div><div style="text-align: center;"><div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelection_75771418" continuedAt="TextSelectionAppend_75771418_1"><div style="clear:both;max-height:0pt;"></div><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> <ix:exclude>F-27</ix:exclude></div></div></div></ix:continuation></div></div><ix:continuation id="TextSelectionAppend_75771418_1" continuedAt="TextSelectionAppend_75771418_2"><ix:exclude><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771418_2" continuedAt="TextSelectionAppend_75771418_3"><ix:exclude><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771418_3" continuedAt="TextSelectionAppend_75771418_4"><ix:exclude><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc" style="null;text-indent: 0px;">Table of Contents</a></div></ix:exclude></ix:continuation> <div><div><div style="background-color:white;display: inline;"><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771418_4" continuedAt="TextSelectionAppend_75771418_5"><ix:nonNumeric name="us-gaap:LeaseCostTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Lease cost information is as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: &quot;Times New Roman&quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 41%;"></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; white-space: nowrap; border-bottom: 1pt solid rgb(0, 0, 0);"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating Leases</div></div></div></div><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"></div>(In thousands)<div style="letter-spacing: 0px; top: 0px;;display:inline;"></div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Statement&#160;of&#160;Income&#160;Classification</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Operating Lease Costs</div></td>
<td style="vertical-align: bottom;;width:4%;">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap;text-align:center;"><div style="line-height: normal; margin-bottom: 0px; margin-top: 0px;">&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap; text-align: right;">General&#160;and&#160;Administrative&#160;Expense</td>
<td style="vertical-align:bottom"><div style="line-height: normal; margin-bottom: 0px; margin-top: 0px;">&#160;</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space: nowrap; vertical-align: bottom;;text-align:right;;width:4%;"><ix:nonFraction name="us-gaap:OperatingLeaseExpense" contextRef="P02_01_2022To01_31_2023_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">460</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space: nowrap; vertical-align: bottom;;text-align:right;;width:4%;"><ix:nonFraction name="us-gaap:OperatingLeaseExpense" contextRef="P02_01_2021To01_31_2022_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">510</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table></ix:nonNumeric> <ix:nonNumeric name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771457"> </ix:nonNumeric></ix:continuation></div></div><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771418_5"><ix:continuation id="TextSelection_75771457"><div style="text-indent: 4%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">At January&#160;31, 2023, maturities of operating lease liabilities <div style="display:inline;">are </div>as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:89%"></td>
<td style="vertical-align:bottom;width:7%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom;white-space:nowrap"><div style="margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">(In thousands)</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2024</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">302</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2025</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">199</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2026</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">154</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2027</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">149</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2028</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">92</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Thereafter</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Lease Payments</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">896</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Less: Imputed Interest</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">66</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Lease Liabilities</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">830</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table></ix:continuation> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">As of January&#160;31, 2023, the weighted-average remaining lease term and weighted-average discount rate for our operating leases are <ix:nonNumeric name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" contextRef="PAsOn01_31_2023" format="ixt-sec:duryear">3.8</ix:nonNumeric> years and <ix:nonFraction name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" contextRef="PAsOn01_31_2023" unitRef="Unit_pure" decimals="4" scale="-2" format="ixt:num-dot-decimal">3.87</ix:nonFraction>%, respectively. We calculated the weighted-average discount rate using incremental borrowing rates, which equal the rates of interest that we would pay to borrow funds on a fully collateralized basis over a similar term. </div><ix:nonNumeric name="us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Supplemental cash flow information related to leases is as follows: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 8pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 78%;"></td>
<td style="vertical-align: bottom; width: 7%;"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align: bottom; width: 7%;"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(In thousands)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Cash paid for operating lease liabilities</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeasePayments" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">314</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeasePayments" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">372</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table></ix:nonNumeric></ix:continuation> <ix:nonNumeric name="us-gaap:ComprehensiveIncomeNoteTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771342"><div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 14&#8212;Accumulat<div style="display:inline;">ed O</div>ther Comprehensive Loss </div></div><ix:nonNumeric name="us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The changes in the balance of accumulated other comprehensive loss by component are as follows: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 92%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 60%;"></td>
<td style="vertical-align: bottom; width: 8%;"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align: bottom; width: 8%;"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align: bottom; width: 8%;"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Foreign&#160;Currency<br/> Translation<br/> Adjustments</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/> Unrealized<br/> Gain&#160;(Losses)<br/> on&#160;Cash&#160;Flow<br/> Hedges</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance at January&#160;31, 2020</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">985</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2020_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">108</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,093</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss) before reclassification</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" contextRef="P02_01_2020To01_31_2021_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">710</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" contextRef="P02_01_2020To01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">239</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" contextRef="P02_01_2020To01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">471</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Amounts Reclassified from AOCI to Earnings</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" contextRef="P02_01_2020To01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">193</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" contextRef="P02_01_2020To01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">193</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Cross-Currency Interest Rate Swap Termination</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" contextRef="P02_01_2020To01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">45</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" contextRef="P02_01_2020To01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">45</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss)</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2020To01_31_2021_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">710</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2020To01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2020To01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">709</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance at January&#160;31, 2021</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2021_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">275</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">109</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">384</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Loss before reclassification</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" contextRef="P02_01_2021To01_31_2022_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,426</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" contextRef="P02_01_2021To01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,426</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Amounts Reclassified from AOCI to Earnings</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" contextRef="P02_01_2021To01_31_2022_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">62</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" contextRef="P02_01_2021To01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">62</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss)</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2021To01_31_2022_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,426</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2021To01_31_2022_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">62</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2021To01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,364</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance at January&#160;31, 2022</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2022_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,701</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2022_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">47</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,748</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss) before reclassification</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" contextRef="P02_01_2022To01_31_2023_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">537</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" contextRef="P02_01_2022To01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">537</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Amounts reclassified from AOCI to Earnings</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" contextRef="P02_01_2022To01_31_2023_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">47</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" contextRef="P02_01_2022To01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">47</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss)</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2022To01_31_2023_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">537</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2022To01_31_2023_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">47</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="P02_01_2022To01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">490</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance at January&#160;31, 2023</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2023_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,238</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,238</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table></ix:nonNumeric></ix:nonNumeric></div><div style="text-align: center;"><div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelection_75771342" continuedAt="TextSelectionAppend_75771342_1"><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:exclude>F-28</ix:exclude></div></div></div></ix:continuation></div></div><ix:continuation id="TextSelectionAppend_75771342_1" continuedAt="TextSelectionAppend_75771342_2"><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"></div></ix:continuation></div></div><ix:continuation id="TextSelectionAppend_75771342_2" continuedAt="TextSelectionAppend_75771342_3"><div></div></ix:continuation></div><div><div style="background-color:white;display: inline;"><ix:continuation id="TextSelectionAppend_75771342_3" continuedAt="TextSelectionAppend_75771342_4"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771342_4" continuedAt="TextSelectionAppend_75771342_5"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771342_5" continuedAt="TextSelectionAppend_75771342_6"><ix:exclude> <div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div></ix:exclude></ix:continuation> <div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771342_6"><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The amounts presented above in other comprehensive income (loss) are net of taxes except for translation adjustments associated with our German, Danish and Shanghai subsidiaries. </div></div></div></ix:continuation><ix:nonNumeric name="us-gaap:StockholdersEquityNoteDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Note 15&#8212;Shareholders&#8217; Equity </div></div></div></div><div style="font-weight:bold;display:inline;"> </div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During fiscal years 2023 and 2022, certain of our employees delivered a total of <ix:nonFraction name="alot:StockDeliveredDuringPeriodSharesStockOptionsExercise" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">17,752</ix:nonFraction> and <ix:nonFraction name="alot:StockDeliveredDuringPeriodSharesStockOptionsExercise" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">27,222</ix:nonFraction> shares, respectively, of our common stock to satisfy the exercise price and related taxes for stock options exercised and restricted stock vesting. The shares delivered were valued at a total of $<ix:nonFraction name="alot:StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.3</ix:nonFraction>&#160;million and $<ix:nonFraction name="alot:StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.4</ix:nonFraction>&#160;millio<div style="display:inline;">n, resp</div>ectively, and are included in treasury stock in the accompanying consolidated balance sheets<div style="letter-spacing: 0px; top: 0px;;display:inline;"> a</div>t January&#160;31, 2023 and 2022. These transactions did not impact the number of shares authorized for repurchase under our current repurchase program. </div></ix:nonNumeric><ix:nonNumeric name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771346"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 16&#8212;Share-Based Compensation </div></div><div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Company maintains the following share-based compensation plans: </div><div style="margin-top:18pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Stock Plans: </div></div></div><div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We have one equity incentive plan from which we are authorized to grant equity awards, the AstroNova, Inc. 2018 Equity Incentive Plan (the &#8220;2018 Plan&#8221;). The 2018 Plan provides for, among other things, the issuance of awards, including incentive stock options, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-qualified</div> stock options, stock appreciation rights, time-based restricted stock units (&#8220;RSUs&#8221;), or performance-based restricted stock units (&#8220;PSUs&#8221;) and restricted stock awards (RSAs). The 2018 Plan authorizes the issuance of up to <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" contextRef="PAsOn01_31_2023_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">950,000</ix:nonFraction> shares of common stock, plus an additional number of shares equal to the number of shares subject to awards granted under the previous equity incentive plans that are forfeited, cancelled, satisfied without the issuance of stock, otherwise terminated (other than by exercise), or, for shares of stock issued pursuant to any unvested award, that are reacquired by us at not more than the grantee&#8217;s purchase price (other than by exercise). Under the 2018 Plan, all awards to employees generally have a minimum vesting period of one year. Options granted under the 2018 Plan must be issued at an exercise price of not less than the fair market value of our common stock on the date of grant and expire after ten years. Under the 2018 Plan, there were <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="PAsOn01_31_2023_RestrictedStockUnitsRSUMemberusgaapAwardTypeAxis_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">124,962</ix:nonFraction> unvested RSUs; <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="PAsOn01_31_2023_PerformanceSharesMemberusgaapAwardTypeAxis_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">128,793</ix:nonFraction> unvested PSUs; <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="PAsOn01_31_2023_RestrictedStockMemberusgaapAwardTypeAxis_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">21,172</ix:nonFraction> unvested RSAs and options to purchase an aggregate of <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn01_31_2023_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">135,500</ix:nonFraction> shares outstanding as of January&#160;31, 2023. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In addition to the 2018 Plan, we previously granted equity awards under our 2015 Equity Incentive Plan (the &#8220;2015 Plan&#8221;) and our 2007 Equity Incentive Plan (the &#8220;2007 Plan&#8221;). No new awards may be issued under either the 2007 or 2015 Plans, but outstanding awards will continue to be governed by those plans. As of January&#160;31, 2023, options to purchase an aggregate of <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn01_31_2023_TwoThousandSevenEquityIncentivePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">276,574</ix:nonFraction> shares were outstanding under the 2007 Plan and options to purchase an aggregate of <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn01_31_2023_RestrictedStockMemberusgaapAwardTypeAxis_TwoThousandFifteenEquityIncentivePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">135,125</ix:nonFraction> shares were outstanding under the 2015 Plan. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We also have a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-Employee</div> Director Annual Compensation Program (the &#8220;Program&#8221;), under which each of our <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-employee</div> directors automatically receives a grant of restricted stock on the date of their <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">re-election</div> to our board of directors. The number of whole shares granted is equal to the number calculated by dividing the stock component of the director compensation amount determined by the compensation committee for that year by the fair market value of our stock on that day. The value of the restricted stock award for fiscal 2023 was $<ix:nonFraction name="us-gaap:RestrictedStockExpense" contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardMemberusgaapAwardTypeAxis" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">65,000</ix:nonFraction>. Shares of restricted stock granted under the Program become vested on the first anniversary of the date of grant, conditi<div style="display:inline;">one</div>d upon the recipient&#8217;s continued service on our board of directors through that date.</div><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:exclude>F-29</ix:exclude></div></div></div></ix:nonNumeric></div></div></div></div></div><ix:continuation id="TextSelection_75771346" continuedAt="TextSelectionAppend_75771346_1"><ix:exclude><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771346_1" continuedAt="TextSelectionAppend_75771346_2"><ix:exclude><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771346_2" continuedAt="TextSelectionAppend_75771346_3"><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><ix:exclude> <div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div></ix:exclude></div></ix:continuation> <div><div style="background-color:white;display: inline;"><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771346_3" continuedAt="TextSelectionAppend_75771346_4"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;;text-indent: 0px;"><div style="display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Share-Based Compensation: </div></div></div></div><ix:nonNumeric name="us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Share-based compensation expense has been recognized as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:70%"></td>
<td style="vertical-align:bottom;width:4%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:4%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:4%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="10" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Years&#160;Ended&#160;January&#160;31</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Stock Options</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:StockOptionPlanExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">7</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:StockOptionPlanExpense" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">210</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:StockOptionPlanExpense" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">517</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Restricted Stock Awards and Restricted Stock Units</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RestrictedStockExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,271</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RestrictedStockExpense" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,266</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RestrictedStockExpense" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,285</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Employee Stock Purchase Plan</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:EmployeeStockPurchasePlanExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">12</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:EmployeeStockPurchasePlanExpense" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">17</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:EmployeeStockPurchasePlanExpense" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">17</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,290</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,493</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,819</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table></ix:nonNumeric> <div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%; text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Stock Options: </div></div></div></div> <ix:nonNumeric name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Aggregated information regarding stock options granted under the plans is summarized below: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width: 72%;"></td>
<td style="vertical-align: bottom; width: 6%;"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align: bottom; width: 6%;"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number<br/> of&#160;Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/> Average<br/> Exercise<br/> Price Per<br/> Share</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Outstanding, January&#160;31, 2020</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn01_31_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">679,044</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="PAsOn01_31_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">14.46</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Granted</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD_per_Share" decimals="0" scale="0" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Exercised</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">1,200</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">7.60</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Forfeited</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">54,361</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">12.89</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Cancelled</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">1,400</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">7.36</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 72%;">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Outstanding, January&#160;31, 2021</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn01_31_2021" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">622,083</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="PAsOn01_31_2021" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">14.63</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Granted</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD_per_Share" decimals="0" scale="0" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Exercised</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">6,425</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">9.34</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Forfeited</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">17,615</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">15.09</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Cancelled</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD_per_Share" decimals="0" scale="0" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 72%;">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Outstanding, January&#160;31, 2022</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn01_31_2022" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">598,043</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="PAsOn01_31_2022" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">14.67</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Granted</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD_per_Share" decimals="0" scale="0" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Exercised</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">42,944</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">8.74</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Forfeited</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">5,500</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">15.42</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Cancelled</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">2,400</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">8.09</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 72%;">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Outstanding, January&#160;31, 2023</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">547,199</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="PAsOn01_31_2023" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">15.16</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 72%;">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> </ix:nonNumeric> <ix:nonNumeric name="us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Set forth below is a summary of options outstanding at January&#160;31, 2023: </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 34%;"></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td colspan="12" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid; white-space: nowrap;;text-align:center;"><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Outstanding</div></div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Exercisable</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid; white-space: nowrap;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Range of</div></div></div></div><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Exercise prices</div></div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number&#160;of<br/>Shares</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/>Average<br/>Exercise&#160;Price</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/>Average<br/>Remaining<br/>Contractual&#160;Life</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number&#160;of<br/>Shares</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/>Average<br/>Exercise&#160;Price</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted<br/>Average<br/>Remaining<br/>Contractual<br/>Life</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-size: 0px;">
<td style="width:34%"></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 34%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">$<ix:nonFraction name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" contextRef="P02_01_2022To01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">5.00</ix:nonFraction>-<ix:nonFraction name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" contextRef="P02_01_2022To01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">10.00</ix:nonFraction></div></div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" contextRef="PAsOn01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" contextRef="PAsOn01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_USD_per_Share" decimals="0" scale="0" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" contextRef="PAsOn01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" contextRef="PAsOn01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_USD_per_Share" decimals="0" scale="0" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 34%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">$<ix:nonFraction name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" contextRef="P02_01_2022To01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">10.01</ix:nonFraction>-<ix:nonFraction name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" contextRef="P02_01_2022To01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">15.00</ix:nonFraction></div></div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" contextRef="PAsOn01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">332,849</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" contextRef="PAsOn01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">13.68</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonNumeric name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" contextRef="P02_01_2022To01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" format="ixt-sec:duryear">2.9</ix:nonNumeric></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" contextRef="PAsOn01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">332,849</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" contextRef="PAsOn01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">13.68</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonNumeric name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" contextRef="P02_01_2022To01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" format="ixt-sec:duryear">2.9</ix:nonNumeric></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 34%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">$<ix:nonFraction name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" contextRef="P02_01_2022To01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">15.01</ix:nonFraction>-<ix:nonFraction name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" contextRef="P02_01_2022To01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">20.00</ix:nonFraction></div></div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" contextRef="PAsOn01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">214,350</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" contextRef="PAsOn01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">17.45</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonNumeric name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" contextRef="P02_01_2022To01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" format="ixt-sec:duryear">4.8</ix:nonNumeric></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" contextRef="PAsOn01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">214,350</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" contextRef="PAsOn01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">17.45</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonNumeric name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" contextRef="P02_01_2022To01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" format="ixt-sec:duryear">4.8</ix:nonNumeric></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 34%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 34%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">547,199</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" contextRef="PAsOn01_31_2023" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">15.16</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonNumeric name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:duryear">3.7</ix:nonNumeric></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" contextRef="PAsOn01_31_2023" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">547,199</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" contextRef="PAsOn01_31_2023" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">15.16</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonNumeric name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" contextRef="P02_01_2022To01_31_2023" format="ixt-sec:duryear">3.7</ix:nonNumeric></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 34%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"></div> </ix:nonNumeric> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_shares" decimals="0" scale="0" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_shares" decimals="0" scale="0" format="ixt-sec:numwordsen">No</ix:nonFraction></ix:nonFraction> options were granted during fiscal 2023 or fiscal 2022. As of January&#160;31, 2023, there was <ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" contextRef="PAsOn01_31_2023_EmployeeStockOptionMemberusgaapAwardTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt-sec:numwordsen">no</ix:nonFraction> unrecognized compensation expense related to the unvested stock options granted under the plans<div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">. </div></div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> <ix:exclude>F-30</ix:exclude></div></div></div> <ix:exclude><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div></ix:exclude> </ix:continuation></div></div><ix:continuation id="TextSelectionAppend_75771346_4" continuedAt="TextSelectionAppend_75771346_5"><ix:exclude><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771346_5" continuedAt="TextSelectionAppend_75771346_6"><ix:exclude><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div></ix:exclude></ix:continuation><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771346_6"><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">As of January&#160;31, 2023, the aggregate intrinsic value (the aggregate difference between the closing stock price of our common stock on January&#160;31, 2023, and the exercise price of the outstanding options) that would have been received by the option holders if all options had been exercised was $<ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" contextRef="PAsOn01_31_2023_EmployeeStockOptionMemberusgaapAwardTypeAxis" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">50,000</ix:nonFraction> for all exercisable options and all options outstanding. The total aggregate intrinsic value of options exercised during fiscal 2023, 2022 and 2021 was $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">200,000</ix:nonFraction>, $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">26,000</ix:nonFraction>, and $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">4,000</ix:nonFraction>, <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">respectively. </div></div><br/></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;;text-indent: 0px;"><div style="display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Restricted Stock Units, Performance-Based Restricted Stock Units and Restricted Stock Awards : </div></div></div></div><ix:nonNumeric name="us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Aggregated information regarding RSUs, PSUs and RSAs granted under the Plan is summarized below: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:55%"></td>
<td style="vertical-align:bottom;width:14%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:14%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">RSUs,&#160;PSUs&#160;&amp;<br/> RSAs</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-Average<br/> Grant&#160;Date&#160;Fair&#160;Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Outstanding at January&#160;31, 2020</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="PAsOn01_31_2020_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">134,634</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="PAsOn01_31_2020_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">16.79</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Granted</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">245,131</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">7.61</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Vested</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">64,997</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" contextRef="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">17.28</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Forfeited</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">117,355</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" contextRef="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">8.83</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Outstanding at January&#160;31, 2021</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="PAsOn01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">197,413</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="PAsOn01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">9.96</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Granted</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">151,406</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">14.51</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Vested</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">126,939</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" contextRef="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">10.43</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Forfeited</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">900</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" contextRef="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">14.26</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Outstanding at January&#160;31, 2022</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="PAsOn01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">220,980</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="PAsOn01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">13.23</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Granted</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">141,371</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">12.70</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Vested</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">85,324</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">13.45</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Forfeited</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">2,100</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">13.25</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Outstanding at January&#160;31, 2023</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="PAsOn01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:num-dot-decimal">274,927</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="PAsOn01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:num-dot-decimal">12.82</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> </ix:nonNumeric> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">As of January&#160;31, 2023, there was $<ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" contextRef="PAsOn01_31_2023_RestrictedStockUnitsRSUMemberusgaapAwardTypeAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">2.0</ix:nonFraction>&#160;million of unrecognized compensation expense related to unvested RSUs, PSUs and RSAs. This expense is expected to be recognized over a weighted average period of <ix:nonNumeric name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" contextRef="P02_01_2022To01_31_2023_RestrictedStockUnitsRSUMemberusgaapAwardTypeAxis" format="ixt-sec:duryear">1.3</ix:nonNumeric> years. </div> <div style="margin-top:18pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Employee Stock Purchase Plan (ESPP): </div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On June 7, 2022, we adopted the AstroNova Inc. 2022 Employee Stock Purchase Plan (&#8220;2022 ESPP&#8221;) to replace our previous Employee Stock Purchase Plan (the &#8220;Prior ESPP&#8221;). The 2022 ESPP allows eligible employees to purchase shares of common stock at a <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate" contextRef="P02_01_2022To01_31_2023_EmployeeStockPurchasePlanMemberusgaapPlanNameAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:num-dot-decimal">15</ix:nonFraction>% discount from fair value on the first or last day of an offering period, whichever is less. A total of <ix:nonFraction name="alot:ReservationOfSharesUnderEmployeeStockPurchasePlan" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:num-dot-decimal">40,000</ix:nonFraction> shares were reserved for issuance under this plan and <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" contextRef="P02_01_2022To01_31_2023_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:num-dot-decimal">5,045</ix:nonFraction> shares were purchased under the 2022 ESSP during the year ended January&#160;31, 2023. During the periods ended January&#160;31, 2023 and January&#160;31, 2022, there were <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" contextRef="P02_01_2022To01_31_2023_PriorEmployeeStockPurchasePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:num-dot-decimal">1,550</ix:nonFraction> and <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" contextRef="P02_01_2021To01_31_2022_PriorEmployeeStockPurchasePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:num-dot-decimal">8,092</ix:nonFraction> shares, respectively, purchased under the Prior ESPP, and no additional purchases may be made under the Prior ESPP. As of January&#160;31, 2023, <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" contextRef="PAsOn01_31_2023_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:num-dot-decimal">34,955</ix:nonFraction> shares remain available for purchase under the 2022 ESPP. </div> </ix:continuation><ix:nonNumeric name="us-gaap:IncomeTaxDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771352"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 17&#8212;Income Taxes </div></div> <ix:nonNumeric name="us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The components of income (loss) before income taxes are as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:69%"></td>
<td style="vertical-align:bottom;width:4%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:4%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:4%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Domestic</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,773</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,046</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,193</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,637</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,988</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,372</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,410</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,034</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,179</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> </ix:nonNumeric> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"><ix:exclude>F-31</ix:exclude></div> </ix:nonNumeric></div></div><ix:continuation id="TextSelection_75771352" continuedAt="TextSelectionAppend_75771352_1"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771352_1" continuedAt="TextSelectionAppend_75771352_2"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771352_2" continuedAt="TextSelectionAppend_75771352_3"><ix:exclude> <div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div> </ix:exclude></ix:continuation></div></div> <div><div><div style="background-color:white;display: inline;"><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771352_3" continuedAt="TextSelectionAppend_75771352_4"><ix:nonNumeric name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The components of the provision for income taxes are as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 70%;"></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">(In thousands)</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-size: 0px;">
<td style="width:70%"></td>
<td style="vertical-align:bottom;width:4%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:4%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:4%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Current:</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Federal</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">902</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">183</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,272</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">State</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">313</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">76</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">224</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CurrentForeignTaxExpenseBenefit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">870</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CurrentForeignTaxExpenseBenefit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">501</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CurrentForeignTaxExpenseBenefit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">420</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,085</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">394</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,916</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred:</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Federal</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,053</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">180</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">910</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">State</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">315</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">177</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">189</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">32</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">146</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">78</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,336</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">211</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,021</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">749</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">605</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">895</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table></ix:nonNumeric><ix:nonNumeric name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Total income tax provision differs from the expected tax provision as a result of the following: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:71%"></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Income Tax Provision at Statutory Rate</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">716</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,477</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">458</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Change in Valuation Allowance</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">182</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">57</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">81</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign Rate Differential</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">157</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">61</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">197</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Change in Reserves Related to ASC 740 Liability</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:Incometaxreconciliationchangeinreserves" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">93</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="alot:Incometaxreconciliationchangeinreserves" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">245</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="alot:Incometaxreconciliationchangeinreserves" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">10</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Denmark Statutory Audit</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">341</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Meals and Entertainment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Canada Withholding Taxes</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">62</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Global Intangible Low Taxed Income</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">14</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign Derived Intangible Income</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationTaxCreditsForeign" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">180</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationTaxCreditsForeign" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">55</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationTaxCreditsForeign" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">150</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">R&amp;D Credits</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationTaxCreditsResearch" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">160</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationTaxCreditsResearch" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">180</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationTaxCreditsResearch" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">157</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Share Based Compensation</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">52</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">95</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">171</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Return to Provision Adjustment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">22</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">368</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">State Taxes, Net of Federal Tax Effect</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">143</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">28</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">PPP Loan Forgiveness</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:IncomeTaxReconciliationPppLoanForgiveness" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="alot:IncomeTaxReconciliationPppLoanForgiveness" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">937</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:IncomeTaxReconciliationPppLoanForgiveness" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationOtherAdjustments" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">17</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationOtherAdjustments" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationOtherAdjustments" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">13</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">749</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">605</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">895</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table></ix:nonNumeric><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our effective tax rate for fiscal 2023 was <ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">22.0</ix:nonFraction>% compared to <ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">8.6</ix:nonFraction>% in fiscal 2022 and <ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">41.1</ix:nonFraction>% in fiscal 2021. The increase in the effective tax rate in fiscal 2023 from fiscal 2022 is primarily related to the absence of the PPP loan forgiveness which is <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">tax-exempt</div> income that was a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">one-time</div> item that reduced the rate in fiscal 2022. Specific items increasing the effective tax rate in fiscal 2023 include the change in reserves related to ASC 740 liability and the increase in the valuation allowance recorded on China net operating losses. This increase was offset by state taxes, return to provision adjustments, share-based compensation, R&amp;D tax credits, and foreign derived intangible income (&#8220;FDII&#8221;) deduction. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The decrease in the effective tax rate in fiscal 2022 from fiscal 2021 is primarily related to the <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">one-time</div> impact of the PPP loan forgiveness <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">tax-exempt</div> income. Specific items decreasing the effective tax rate include PPP loan forgiveness <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">tax-exempt</div> income, R&amp;D tax credits, foreign derived intangible income (&#8220;FDII&#8221;) deduction and change in reserves related to ASC 740 liabilities. This decrease was offset by state taxes, return to provision adjustments, and taxes on foreign earnings. </div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"><ix:exclude>F-32</ix:exclude> </div></ix:continuation></div></div></div><ix:continuation id="TextSelectionAppend_75771352_4" continuedAt="TextSelectionAppend_75771352_5"><div></div></ix:continuation></div><div><div style="background-color:white;display: inline;"><ix:continuation id="TextSelectionAppend_75771352_5" continuedAt="TextSelectionAppend_75771352_6"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771352_6" continuedAt="TextSelectionAppend_75771352_7"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771352_7" continuedAt="TextSelectionAppend_75771352_8"><ix:exclude><div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div></ix:exclude></ix:continuation><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771352_8" continuedAt="TextSelectionAppend_75771352_9"><div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The components of deferred income tax expense arise from various temporary differences and relate to items included in the statement of income. <ix:nonNumeric name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771356">The tax effects of temporary differences that gave rise to significant portions of the deferred tax assets and liabilities are as follows: </ix:nonNumeric></div><ix:continuation id="TextSelection_75771356"><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width: 74%;"></td>
<td style="vertical-align: bottom; width: 7%;"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align: bottom; width: 7%;"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">(In thousands)</div><br/></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Tax Assets:</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Inventory</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsInventory" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,710</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsInventory" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,159</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Honeywell Royalty Liability</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsRoyaltyLiability" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,008</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsRoyaltyLiability" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,655</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">State R&amp;D Credits</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,851</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,925</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Share-Based Compensation</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">620</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">593</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Bad Debt</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">180</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">213</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Warranty Reserve</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">258</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">198</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Compensation Accrual</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsCompensationAccruals" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">248</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsCompensationAccruals" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">322</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Operating Loss</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">135</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">152</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">ASU 842 Adjustment &#8211; Lease Liability</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">53</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">93</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Unrecognized State Tax Benefits</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsUnrecognizedTaxBenefits" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">58</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsUnrecognizedTaxBenefits" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">64</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign Tax Credit</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsForeign" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">154</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsForeign" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">154</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Service Contract Revenue</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsDeferredServiceContractRevenue" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">90</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsDeferredServiceContractRevenue" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">61</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Section&#160;174 Capitalization*</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsCapitalization" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal" id="Fact_75771699">1,175</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsCapitalization" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:fixed-zero" id="Fact_75771700">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsOther" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">281</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsOther" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">224</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 74%;">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; text-align: right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsGross" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,821</ix:nonFraction></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; text-align: right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsGross" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,813</ix:nonFraction></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Tax Liabilities:</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accumulated Tax Depreciation in Excess of Book Depreciation</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,037</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">455</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Intangibles</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">694</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">767</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">ASU 842 Adjustment &#8211; Lease Liability</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">50</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">90</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesOther" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">180</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesOther" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">318</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 74%;">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; text-align: right;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilities" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,961</ix:nonFraction></td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; text-align: right;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilities" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,630</ix:nonFraction></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 74%;">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Subtotal</div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsLiabilitiesGross" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,860</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="alot:DeferredTaxAssetsLiabilitiesGross" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,183</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td></tr>
<tr style="break-inside: avoid; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
<td style="vertical-align: top; background-color: rgba(255, 255, 255, 0); width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Valuation Allowance</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,120</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">)&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,778</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 74%;">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="background-color: rgb(204, 238, 255);">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Deferred Tax Assets</div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsLiabilitiesNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,740</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsLiabilitiesNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,405</ix:nonFraction></td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 74%;">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td></tr></table><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:2%;vertical-align:top;text-align:left;">*</td>
<td style="vertical-align:top;text-align:left;"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: left; line-height: normal;">Beginning in fiscal 2023, changes to Section&#160;174 of the Internal Revenue Code made by the Tax Cuts and Jobs Act of 2017 no longer permit an immediate deduction for research and development expenditures in the tax year that such costs are incurred. These costs are capitalized resulting in an increase in deferred tax assets of $<ix:nonFraction name="alot:IncreaseDecreaseInDeferredTaxAssets" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.2</ix:nonFraction>&#160;million. </div></td></tr></table><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred taxes are reflected in the consolidated balance sheet as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:78%"></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Tax Assets</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,907</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,591</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Tax Liabilities</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredTaxLiabilities" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">167</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredTaxLiabilities" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">186</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Net Deferred Tax Assets</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsLiabilitiesNet" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,740</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsLiabilitiesNet" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,405</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table></ix:continuation><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The valuation allowances of $<ix:nonFraction name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">2.1</ix:nonFraction>&#160;million at January&#160;31, 2023 and $<ix:nonFraction name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.8</ix:nonFraction>&#160;million at January&#160;31, 2022, relate to Rhode Island research and development tax credit carryforwards, foreign tax credit carryforwards, and China&#8217;s net operating losses that are expected to expire unutilized. </div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"><ix:exclude>F-33</ix:exclude> </div></ix:continuation></div></div><ix:continuation id="TextSelectionAppend_75771352_9" continuedAt="TextSelectionAppend_75771352_10"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771352_10" continuedAt="TextSelectionAppend_75771352_11"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771352_11" continuedAt="TextSelectionAppend_75771352_12"><ix:exclude><div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div></ix:exclude></ix:continuation></div></div></div> <div> <div style="background-color:white;display: inline;"> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771352_12"> <div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">At January&#160;31, 2023, we had net operating loss carryforwards of $<ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" contextRef="PAsOn01_31_2023_CNsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.1</ix:nonFraction>&#160;million in China, which expire in <ix:nonNumeric name="alot:DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod" contextRef="P02_01_2022To01_31_2023_CNsrtStatementGeographicalAxis">2024 through 2028</ix:nonNumeric>. We have net operating loss carryforwards of less than $<ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" contextRef="PAsOn01_31_2023_DEsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.1</ix:nonFraction>&#160;million in France, which can be carried forward indefinitely. We expect to utilize the net operating loss carryforwards in France before in future tax periods. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">At January&#160;31, 2023, we had state research credit carryforwards of approximately $<ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch" contextRef="PAsOn01_31_2023_TaxCreditsCarryForwardsMemberALOTDetailsOfIncomeTaxBenefitAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.9</ix:nonFraction>&#160;million which expire in <ix:nonNumeric name="alot:DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod" contextRef="P02_01_2022To01_31_2023">2023 through 2030</ix:nonNumeric>. Additionally, we had $<ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsForeign" contextRef="PAsOn01_31_2023_AdditionalForeignTaxCreditMemberALOTDetailsOfIncomeTaxBenefitAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.2</ix:nonFraction>&#160;million of foreign tax credits. We maintain a full valuation allowance against these credits as we expect these credits to expire unused. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We believe that it is reasonably possible that some unrecognized tax benefits, accrued interest and penalties could decrease income tax expense in the next year due to either the review of previously filed tax returns or the expiration of certain statutes of limitation. The changes in the balances of unrecognized tax benefits, excluding interest and penalties are as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div> <ix:nonNumeric name="us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true">
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:76%"></td>
<td style="vertical-align:bottom;width:4%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:4%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:4%"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance, beginning of the year</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">303</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" contextRef="PAsOn01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">384</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" contextRef="PAsOn01_31_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">362</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Increases in prior period tax positions</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">24</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">63</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">59</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Increases in current period tax positions</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">136</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">67</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Reductions related to lapse of statutes of limitations</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">49</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">211</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">42</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance, end of the year</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">414</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">303</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" contextRef="PAsOn01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">384</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table> </ix:nonNumeric> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During fiscal 2023 and 2022, we released $<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">49,000</ix:nonFraction> and $<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">211,000</ix:nonFraction>, respectively, of uncertain tax positions including accrued interest and penalties relating to a change in various unrecognized tax positions. The Company has accrued potential interest and penalties of $<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">77,000</ix:nonFraction> included in income taxes payable in the accompanying consolidated balance sheet at the end of January&#160;31, 2023. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Company and its subsidiaries file income tax returns in U.S. federal jurisdictions, various state jurisdictions, and various foreign jurisdictions. In fiscal 2023, we released $<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" contextRef="PAsOn01_31_2023_DomesticCountryMemberusgaapIncomeTaxAuthorityAxis" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">27,000</ix:nonFraction> related to a federal tax exposure for the fiscal 2019 tax year and $<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" contextRef="P02_01_2022To01_31_2023_DomesticCountryMemberusgaapIncomeTaxAuthorityAxis" unitRef="Unit_USD" decimals="0" scale="0" format="ixt:num-dot-decimal">22,000</ix:nonFraction> of state nexus positions as a result of the expiration of the statute of limitations. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">U.S. income taxes have not been provided on $<ix:nonFraction name="us-gaap:ForeignEarningsRepatriated" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">8.5</ix:nonFraction>&#160;million of undistributed earnings of our foreign subsidiaries since it is our intention to permanently reinvest such earnings offshore. If the earnings were distributed in the form of dividends, the Company would not be subject to U.S. tax as a result of the Tax Act but could be subject to foreign income and withholding taxes. Determination of the amount of this unrecognized deferred income tax liability is not practical. </div> </ix:continuation><ix:nonNumeric name="us-gaap:SegmentReportingDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771358"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 18&#8212;Nature of Operations, Segment Reporting and Geographical Information </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our operations consist of the design, development, manufacture and sale of specialty printers and data acquisition and analysis systems, including both hardware&#160;and software and related consumable supplies. We organize and manage our business as a portfolio of products and services designed around a common theme of data acquisition and information output. We have <ix:nonFraction name="us-gaap:NumberOfReportableSegments" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_Segment" decimals="INF" scale="0" format="ixt-sec:numwordsen">two</ix:nonFraction> reporting segments consistent with our revenue product groups: Product Identification (&#8220;PI&#8221;) and Test&#160;&amp; Measurement (&#8220;T&amp;M&#8221;). </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our PI segment produces an array of high-technology digital color and monochrome label printers and mini presses, labeling software and supplies for a variety of commercial industries worldwide and includes our newly acquired Astro Machine. AstroNova&#8217;s T&amp;M segment produces data acquisition systems used worldwide for a variety of recording, monitoring and troubleshooting applications for many industries including aerospace, automotive, defense, rail, energy, industrial and general manufacturing. The T&amp;M segment also includes our line of aerospace flight deck and cabin printers. </div> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"><ix:exclude>F-34</ix:exclude> </div> </ix:nonNumeric></div> </div> <ix:continuation id="TextSelection_75771358" continuedAt="TextSelectionAppend_75771358_1"><ix:exclude><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div></ix:exclude></ix:continuation> <ix:continuation id="TextSelectionAppend_75771358_1" continuedAt="TextSelectionAppend_75771358_2"><ix:exclude><hr style="color:#999999;height:3px;width:100%"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771358_2" continuedAt="TextSelectionAppend_75771358_3"><ix:exclude> <div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc">Table of Contents</a></div> </ix:exclude></ix:continuation> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771358_3" continuedAt="TextSelectionAppend_75771358_4"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Business is conducted in the United States and through foreign branch offices and subsidiaries in Canada, Europe, China, Southeast Asia and Mexico. Manufacturing activities are primarily conducted in the United States. Revenue and service activities outside the United States are conducted through wholly owned entities and, to a lesser extent, through authorized distributors and agents. Transfer prices are intended to produce gross profit margins as would be associated with an arms-length transaction. </div></div></div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The accounting policies of the reporting segments are the same as those described in the summary of significant accounting policies herein. We evaluate segment performance based on the segment profit before corporate and financial administration expenses. </div> <ix:nonNumeric name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Summarized below are the revenue and segment operating profit (loss) (both in dollars and as a percentage of revenue) for each reporting segment: </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 36%;"></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">($ in thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Revenue</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Segment&#160;Operating&#160;Profit<br/>(Loss)</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Segment&#160;Operating&#160;Profit&#160;(Loss)<br/>as&#160;a&#160;% of Revenue</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="font-size: 0px;">
<td style="width: 36%;"></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Product Identification</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">103,089</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">90,915</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">90,268</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,889</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,411</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,885</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:PercentageOfOperatingProfitToNetSales" contextRef="PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">7.7</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:PercentageOfOperatingProfitToNetSales" contextRef="PAsOn01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">11.5</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:PercentageOfOperatingProfitToNetSales" contextRef="PAsOn01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">14.3</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">T&amp;M</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">39,438</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">26,565</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">25,765</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,989</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,398</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,032</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:PercentageOfOperatingProfitToNetSales" contextRef="PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">22.8</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:PercentageOfOperatingProfitToNetSales" contextRef="PAsOn01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">12.8</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="alot:PercentageOfOperatingProfitToNetSales" contextRef="PAsOn01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_pure" decimals="3" scale="-2" sign="-" format="ixt:num-dot-decimal">4.0</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)%&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">142,527</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">117,480</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">116,033</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">16,878</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,809</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,853</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:PercentageOfOperatingProfitToNetSales" contextRef="PAsOn01_31_2023" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">11.8</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:PercentageOfOperatingProfitToNetSales" contextRef="PAsOn01_31_2022" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">11.8</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="alot:PercentageOfOperatingProfitToNetSales" contextRef="PAsOn01_31_2021" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">10.2</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Corporate Expenses</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" contextRef="P02_01_2022To01_31_2023_CorporateNonSegmentMembersrtConsolidationItemsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,435</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" contextRef="P02_01_2021To01_31_2022_CorporateNonSegmentMembersrtConsolidationItemsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,553</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" contextRef="P02_01_2020To01_31_2021_CorporateNonSegmentMembersrtConsolidationItemsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,420</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Operating Income</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,443</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,256</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,433</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Income (Expense), Net</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,033</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,778</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">254</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Income Before Income Taxes</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,410</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,034</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,179</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Income Tax Provision</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">749</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">605</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">895</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Income</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,661</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,429</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,284</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr> </table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"></div> </ix:nonNumeric> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">No customer accounted for greater than <ix:nonFraction name="alot:NumberOfCustomersAccountingForCreditRisk" contextRef="PAsOn01_31_2022" unitRef="Unit_Segment" decimals="INF" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="alot:NumberOfCustomersAccountingForCreditRisk" contextRef="PAsOn01_31_2023" unitRef="Unit_Segment" decimals="INF" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="alot:NumberOfCustomersAccountingForCreditRisk" contextRef="PAsOn01_31_2021" unitRef="Unit_Segment" decimals="INF" scale="0" format="ixt:num-dot-decimal">10</ix:nonFraction></ix:nonFraction></ix:nonFraction>% of net revenue in fiscal 2023, 2022 or 2021. </div> <ix:nonNumeric name="us-gaap:ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771360"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Other information by segment is presented below: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:72%"></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Assets</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Product Identification</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:Assets" contextRef="PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">69,607</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:Assets" contextRef="PAsOn01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">51,732</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">T&amp;M</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:Assets" contextRef="PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">60,730</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:Assets" contextRef="PAsOn01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">50,374</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Corporate*</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:Assets" contextRef="PAsOn01_31_2023_CorporateNonSegmentMembersrtConsolidationItemsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,870</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:Assets" contextRef="PAsOn01_31_2022_CorporateNonSegmentMembersrtConsolidationItemsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,849</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:Assets" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">139,207</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:Assets" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">114,955</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"></div> <div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:2%;vertical-align:top;text-align:left;">*</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: left; line-height: normal;">Corporate assets consist principally of cash, cash equivalents, deferred tax assets and refunds, and certain prepaid corporate assets. </div> </td> </tr> </table> </ix:nonNumeric></ix:continuation></div> </div> </div> </div> <ix:continuation id="TextSelection_75771360" continuedAt="TextSelectionAppend_75771360_1"><ix:continuation id="TextSelectionAppend_75771358_4" continuedAt="TextSelectionAppend_75771358_5"><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div> </ix:continuation></ix:continuation><div> <div> <div style="background-color:white;display: inline;"> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771358_5" continuedAt="TextSelectionAppend_75771358_6"><ix:continuation id="TextSelectionAppend_75771360_1">
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:60%"></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Depreciation and<br/> Amortization</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Capital Expenditures</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Product Identification</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,219</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,157</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,835</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">121</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">847</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,563</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">T&amp;M</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,697</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,837</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,148</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">108</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">949</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,024</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,916</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,994</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,983</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">229</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,796</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,587</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table> </ix:continuation> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"></div></div><br/></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:exclude>F-35</ix:exclude></div></div></div> <ix:exclude><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div></ix:exclude> </ix:continuation></div> </div> <ix:continuation id="TextSelectionAppend_75771358_6" continuedAt="TextSelectionAppend_75771358_7"><ix:exclude><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771358_7" continuedAt="TextSelectionAppend_75771358_8"><ix:exclude> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> </ix:exclude></ix:continuation> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771358_8"> <div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Geographical Data </div></div></div></div> <ix:nonNumeric name="us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Presented below is selected financial information by geogr<div style="letter-spacing: 0px; top: 0px;;display:inline;">ap</div>hic area:</div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:57%"></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Long-Lived&#160;Assets*</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Revenue</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; padding-bottom: 0.5pt;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">United States</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_USsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">91,917</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_USsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">68,185</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_USsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">70,911</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="PAsOn01_31_2023_USsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">34,277</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="PAsOn01_31_2022_USsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">29,131</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Europe</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_EuropeMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">31,021</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_EuropeMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">31,922</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_EuropeMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">29,029</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="PAsOn01_31_2023_EuropeMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,230</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="PAsOn01_31_2022_EuropeMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,486</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Canada</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_CAsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,393</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_CAsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,519</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_CAsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,574</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="PAsOn01_31_2023_CAsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="PAsOn01_31_2022_CAsrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Asia</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_AsiaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,345</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_AsiaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,926</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_AsiaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,105</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="PAsOn01_31_2023_AsiaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="PAsOn01_31_2022_AsiaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">15</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Central and South America</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_CentralAndSouthAmericaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,589</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_CentralAndSouthAmericaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,271</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_CentralAndSouthAmericaMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,950</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023_OtherCountriesMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,262</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022_OtherCountriesMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,657</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021_OtherCountriesMembersrtStatementGeographicalAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,464</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">142,527</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">117,480</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">116,033</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">35,520</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">30,641</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"></div> <div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-size: 10pt; border: 0px; width: 100%;">
<tr style="page-break-inside:avoid">
<td style="width:2%;vertical-align:top;text-align:left;">*</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; line-height: normal;">Long-lived assets exclude goodwill assigned to the T&amp;M segment of $<ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn01_31_2023_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn01_31_2022_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">4.5</ix:nonFraction></ix:nonFraction>&#160;million at both January&#160;31, 2023 and 2022 and $<ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn01_31_2023_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">10.1</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn01_31_2022_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">7.6</ix:nonFraction>&#160;million assigned to the PI segment at January&#160;31, 2023 and 2022, respectively.&#160;</div> </td> </tr> </table> </ix:nonNumeric></ix:continuation> <ix:nonNumeric name="us-gaap:CompensationAndEmployeeBenefitPlansTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 19&#8212;Employee Benefit Plans </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We sponsor a Profit-Sharing Plan (the &#8220;Plan&#8221;) which provides retirement benefits to all eligible domestic employees. The Plan allows participants to defer a portion of their cash compensation and contribute such deferral to the Plan through payroll deductions. The Company makes matching contributions up to specified levels. The deferrals are made within the limits prescribed by Section&#160;401(k) of the Internal Revenue Code. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">All contributions are deposited into trust funds. It is our policy to fund any contributions accrued. Our annual contribution amounts are determined by the Board of Directors. Contributions paid or accrued amounted to $<ix:nonFraction name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.5</ix:nonFraction>&#160;million in fiscal 2023, $<ix:nonFraction name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.5</ix:nonFraction>&#160;million in fiscal 2022 and $<ix:nonFraction name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.4</ix:nonFraction>&#160;million in fiscal 2021. </div> </ix:nonNumeric><ix:nonNumeric name="us-gaap:ProductWarrantyDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771366"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 20&#8212;Product Warranty Liability </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We offer a manufacturer&#8217;s warranty for the majority of our hardware products. The specific terms and conditions of warranty vary depending upon the products sold and the country in which we do business. We estimate the warranty costs based on historical claims experience and record a liability in the amount of such estimates at the time product revenue is recognized. We regularly assess the adequacy of our recorded warranty liabilities and adjust the amounts as necessary. <ix:nonNumeric name="us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771369">Activity in the product warranty liability, which is included in other accrued expenses in the accompanying consolidated balance sheet, is as follows: </ix:nonNumeric></div> <ix:continuation id="TextSelection_75771369"><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:68%"></td>
<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:6%"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">(</div>In thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance, beginning of the year</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">834</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" contextRef="PAsOn01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">730</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" contextRef="PAsOn01_31_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">850</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Provision for Warranty Expense</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualWarrantiesIssued" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,077</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualWarrantiesIssued" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,174</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualWarrantiesIssued" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">855</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Cost of Warranty Repairs</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ProductWarrantyAccrualPayments" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,839</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ProductWarrantyAccrualPayments" contextRef="P02_01_2021To01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,070</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ProductWarrantyAccrualPayments" contextRef="P02_01_2020To01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">975</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance, end of the year</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,072</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" contextRef="PAsOn01_31_2022" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">834</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" contextRef="PAsOn01_31_2021" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">730</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table> </ix:continuation> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"><br/></div> </ix:nonNumeric></div> </div> </div> </div> <div> <div style="background-color:white;display: inline;"> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelection_75771366"> <div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During fiscal 2022, we incurred incremental costs because of a product quality issue with one of our vendors. As the result of discussions with the vendor, which was responsible for the product quality issue, we entered into an agreement wh<div style="letter-spacing: 0px; top: 0px;;display:inline;">ere</div>by the vendor paid us $<ix:nonFraction name="alot:Reimbursementreceivedfromvendor" contextRef="P02_01_2022To01_31_2023" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">975,000</ix:nonFraction> as partial reimbursement of the costs we incurred in supporting our customers with respect to the product quality issue. For the period ended January&#160;31, 2022, we recorded this payment to offset cost of goods in our PI segment for the product lines effected to partially reverse the accounting impact when the original costs of the quality issues were <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">incurred. </div></div></div> </ix:continuation><ix:nonNumeric name="us-gaap:ConcentrationRiskDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true" continuedAt="TextSelection_75771370"> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:exclude>F-36</ix:exclude></div></div></div> <ix:exclude><div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div></ix:exclude> </ix:nonNumeric></div> </div> <ix:continuation id="TextSelection_75771370" continuedAt="TextSelectionAppend_75771370_1"><ix:exclude><hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/></ix:exclude></ix:continuation><ix:continuation id="TextSelectionAppend_75771370_1" continuedAt="TextSelectionAppend_75771370_2"><ix:exclude> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> </ix:exclude></ix:continuation> <div style="text-align:center"> <div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:continuation id="TextSelectionAppend_75771370_2"> <div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Note 21&#8212;Concentration of Risk </div></div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Credit is generally extended on an uncollateralized basis to almost all customers after review of credit worthiness. Concentration of credit and geographic risk with respect to accounts receivable is limited due to the large number and general dispersion of accounts, which constitute our customer base. We periodically perform <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">on-going</div> credit evaluations of our customers. We have not historically experienced significant credit losses on collection of our accounts receivable. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During the years ended January&#160;31, 2023, 2022 and 2021, one vendor accounted for <ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P02_01_2022To01_31_2023_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">18.7</ix:nonFraction>%, <ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P02_01_2021To01_31_2022_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">23.3</ix:nonFraction>% and <ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P02_01_2020To01_31_2021_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">23.2</ix:nonFraction>% of purchases, respectively, and <ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P02_01_2022To01_31_2023_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_TradeAccountsPayablesMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">16.2</ix:nonFraction>%, <ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P02_01_2021To01_31_2022_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_TradeAccountsPayablesMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">15.4</ix:nonFraction>% and <ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P02_01_2020To01_31_2021_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_TradeAccountsPayablesMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:num-dot-decimal">28.3</ix:nonFraction>% of accounts payable, respectively, as of January&#160;31, 2023, 2022 and 2021. </div> </ix:continuation><ix:nonNumeric name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 22&#8212;Commitments and Contingencies </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In order to meet our manufacturing demands and, in some cases, lock in particular pricing structures for specific goods used in manufacturing, we enter into purchase commitments with our suppliers. At January&#160;31, 2023, our purchase commitments totaled $<ix:nonFraction name="us-gaap:PurchaseObligation" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">25.8</ix:nonFraction>&#160;million, with $<ix:nonFraction name="us-gaap:PurchaseObligationDueInNextTwelveMonths" contextRef="PAsOn01_31_2023" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:num-dot-decimal">22.8</ix:nonFraction>&#160;million due within 12 months, some of which are <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-cancelable.</div> </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We are also subject to contingencies, including legal proceedings and claims arising in the normal course of business that cover a wide range of matters including, among others, contract and employment claims; workers compensation claims; product liability; warranty and modification; and adjustment or replacement of component parts of units sold. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Direct costs associated with the estimated resolution of contingencies are accrued at the earliest date at which it is deemed probable that a liability has been incurred and the amount of such liability can be reasonably estimated. While it is impossible to ascertain the ultimate legal and financial liability with respect to contingent liabilities, including lawsuits, we believe that the aggregate amount of such liabilities, if any, in excess of amounts provided or covered by insurance, will not have a material adverse effect on the consolidated financial position or results of operations. It is possible, however, that future results of operations for any particular future period could be materially affected by changes in our assumptions or strategies related to these contingencies or changes out of our control. </div> </ix:nonNumeric></div> </div> </div> </div> </div> <div><div><div style="background-color:white;display: inline;"><div style="text-align:center"><div style="width:8.5in;text-align:left;margin-left: auto;margin-right: auto"><ix:nonNumeric name="us-gaap:FairValueDisclosuresTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 23&#8212;Fair Value Measurements </div></div><div style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Assets and Liabilities Not Recorded at Fair Value on the Cons<div style="letter-spacing: 0px; top: 0px;;display:inline;">olid</div>ated Balance Sheet </div></div><ix:nonNumeric name="us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our long-term debt, including the current portion of long-term debt not reflected in the financial statements at fair value, is reflected in the table below: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:66%"></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:2%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fair&#160;Value Measurement at<br/> January&#160;31, 2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;1</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;2</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;3</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Long-Term Debt and Related Current Maturities</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DebtLongtermAndShorttermCombinedAmount" contextRef="PAsOn01_31_2023_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis_FairValueInputsLevel3MemberusgaapFairValueByFairValueHierarchyLevelAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,310</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DebtLongtermAndShorttermCombinedAmount" contextRef="PAsOn01_31_2023_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,310</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DebtLongtermAndShorttermCombinedAmount" contextRef="PAsOn01_31_2023_CarryingReportedAmountFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,250</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1pt">
<td style="height:12pt">&#160;</td>
<td colspan="16" style="height:12pt">&#160;</td>
<td colspan="4" style="height:12pt">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fair&#160;Value Measurement at<br/> January&#160;31, 2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;1</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;2</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;3</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Long-Term Debt and Related Current Maturities</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DebtLongtermAndShorttermCombinedAmount" contextRef="PAsOn01_31_2022_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis_FairValueInputsLevel3MemberusgaapFairValueByFairValueHierarchyLevelAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,255</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DebtLongtermAndShorttermCombinedAmount" contextRef="PAsOn01_31_2022_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,255</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:DebtLongtermAndShorttermCombinedAmount" contextRef="PAsOn01_31_2022_CarryingReportedAmountFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,250</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table></ix:nonNumeric> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The fair value of our long-term debt, including the current portion, is estimated by discounting the future cash flows using current interest rates at which similar borrowings with the same maturities would be made to borrowers with similar credit ratings and is classified as Level&#160;3. </div></ix:nonNumeric> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center">F-3<div style="letter-spacing: 0px; top: 0px;;display:inline;">7</div></div></div></div><div style="margin-top:1em; margin-bottom:0em; page-break-before:always"></div><hr style="color:#999999;height:3px;width:100%"/><div style="font-size: .83em;margin-top : 1.67em;margin-bottom : 1.67em;font-weight: bold;"><a href="#toc"></a> </div><div style="color: rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div><div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; text-align: center;"><div style="width: 8.5in; text-align: left; margin-left: auto; margin-right: auto;"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">ASTRONOVA, INC.</div></div></div></div><ix:nonNumeric name="srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" contextRef="P02_01_2022To01_31_2023" escape="true"><div id="tx415415_8" style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">SCHEDULE II&#8212;VA<div style="display:inline;">LUA</div>TION AND Q<div style="display:inline;">U</div>AL<div style="display:inline;">IFY</div>ING ACCOUNTS AND RESERVES</div></div></div></div><div style="null;text-indent: 0px;;font-weight:bold;display:inline;"> </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;;text-indent: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width:63%"></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td>
<td style="vertical-align:bottom;width:5%"></td>
<td></td>
<td></td>
<td></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap;text-align:center;"><div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; text-align: center; line-height: normal;"><div style="font-weight:bold;display:inline;">Description</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Balance&#160;at<br/>Beginning<br/>of Year</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Provision/<br/>(Benefit)<br/>Charged&#160;to<br/>Operations</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Deductions(2)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Balance<br/>at End<br/>of&#160;Year</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 63%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Allowance for Doubtful Accounts (1):</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">(In thousands)</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 63%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Year Ended January&#160;31,</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 63%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2023</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="PAsOn01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">826</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" contextRef="P02_01_2022To01_31_2023_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">100</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ValuationAllowancesAndReservesDeductions" contextRef="P02_01_2022To01_31_2023_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">195</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="PAsOn01_31_2023_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">731</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 63%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2022</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="PAsOn01_31_2021_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,054</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" contextRef="P02_01_2021To01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">50</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(<ix:nonFraction name="us-gaap:ValuationAllowancesAndReservesDeductions" contextRef="P02_01_2021To01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">278</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="PAsOn01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">826</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 63%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2021</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="PAsOn01_31_2020_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">856</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" contextRef="P02_01_2020To01_31_2021_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">194</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ValuationAllowancesAndReservesDeductions" contextRef="P02_01_2020To01_31_2021_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">4</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;"><ix:nonFraction name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="PAsOn01_31_2021_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,054</ix:nonFraction></td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table><div style="line-height: 8pt; margin-top: 0px; margin-bottom: 0px; border-bottom: 1px solid rgb(0, 0, 0); width: 11%;;text-indent: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%;text-indent: 0px;">
<tr style="page-break-inside:avoid">
<td style="width:4%;vertical-align:top;text-align:left;">(1)</td>
<td style="vertical-align:top;text-align:left;"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: left; line-height: normal;">The allowance for doubtful accounts has been netted against accounts receivable in the balance sheets as of the respective balance sheet dates. </div></td></tr></table>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%;text-indent: 0px;">
<tr style="page-break-inside:avoid">
<td style="width:4%;vertical-align:top;text-align:left;">(2)</td>
<td style="vertical-align:top;text-align:left;"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: left; line-height: normal;">Uncollectible accounts written off, net of recoveries. </div></td></tr></table></ix:nonNumeric><div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;;text-indent: 0px;">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center;text-indent: 0px;"></div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center;text-indent: 0px;">F-3<div style="letter-spacing: 0px; top: 0px;;display:inline;">8</div></div><div style="margin-top: 1em; margin-bottom: 1em"></div></div></div></div></div></div>
</body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-21
<SEQUENCE>2
<FILENAME>d415415dex21.htm
<DESCRIPTION>EX-21
<TEXT>
<HTML><HEAD>
<TITLE>EX-21</TITLE>
</HEAD>
 <BODY BGCOLOR="WHITE">


<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right"><B>Exhibit 21 </B></P>
<P STYLE="margin-top:24pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>LIST OF SUBSIDIARIES OF THE COMPANY </B></P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="100%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" ALIGN="center">


<TR>

<TD WIDTH="81%"></TD>

<TD VALIGN="bottom" WIDTH="1%"></TD>
<TD WIDTH="18%"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<TD VALIGN="bottom" NOWRAP> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; border-bottom:1.00pt solid #000000; display:table-cell; font-size:8pt; font-family:Times New Roman; "><B>Name</B></P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="center" STYLE="border-bottom:1.00pt solid #000000"> <P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman" ALIGN="center"><B>Jurisdiction&nbsp;of&nbsp;Organization</B></P></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">AstroNova GmbH</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Germany</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">AstroNova (Shanghai) Trading Co., Ltd</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">China</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">AstroNova Aerospace, Inc.</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Delaware</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">Astro Machine, LLC</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Delaware</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">AstroNova Scandinavia ApS (formally TrojanLabel ApS)</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Denmark</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">AstroNova (Singapore) Pte Ltd.</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Singapore</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">AstroNova SAS</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">France</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">AstroDigital Data de M&eacute;xico, S.A. de C.V.</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Mexico</TD></TR>
</TABLE>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>3
<FILENAME>d415415dex231.htm
<DESCRIPTION>EX-23.1
<TEXT>
<HTML><HEAD>
<TITLE>EX-23.1</TITLE>
</HEAD>
 <BODY BGCOLOR="WHITE">


<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right"><B>Exhibit 23.1 </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>Consent Of Independent Registered Public Accounting Firm </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We consent to the incorporation by reference in Registration Statements (Nos. 333-265841, 333-231953,
<FONT STYLE="white-space:nowrap">333-143854,</FONT> <FONT STYLE="white-space:nowrap">333-204619,</FONT> and <FONT STYLE="white-space:nowrap">333-225404)</FONT> on Form S-8 of our reports dated April&nbsp;17, 2023, with respect to the consolidated
financial statements and the financial statement schedule of AstroNova, Inc. and the effectiveness of internal control over financial reporting. </P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="100%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" ALIGN="center">


<TR>

<TD WIDTH="100%"></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">/s/ Wolf&nbsp;&amp; Company, P.C.</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">Boston, Massachusetts</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">April&nbsp;17, 2023</TD></TR>
</TABLE>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>4
<FILENAME>d415415dex311.htm
<DESCRIPTION>EX-31.1
<TEXT>
<HTML><HEAD>
<TITLE>EX-31.1</TITLE>
</HEAD>
 <BODY BGCOLOR="WHITE">


<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right"><B>Exhibit 31.1 </B></P>
<P STYLE="margin-top:24pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>CERTIFICATION OF THE CHIEF EXECUTIVE OFFICER PURSUANT TO </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>RULES <FONT STYLE="white-space:nowrap">13a-14(a)</FONT> AND <FONT STYLE="white-space:nowrap">15d-14(a)</FONT> UNDER THE SECURITIES EXCHANGE
ACT OF 1934, </B></P> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>AS ADOPTED PURSUANT TO SECTION 302 OF </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>THE SARBANES-OXLEY ACT OF 2002 </B></P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">I, Gregory
A. Woods, certify that: </P> <P STYLE="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">1. I have reviewed this annual report on Form <FONT STYLE="white-space:nowrap">10-K</FONT> of AstroNova, Inc.; </P>
<P STYLE="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">2. 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> <P STYLE="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">3.
Based on my knowledge, the financial statements, and other financial information included in this annual 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> <P STYLE="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">4. The registrant&#146;s other certifying officer and I are responsible for establishing and maintaining disclosure
controls and procedures (as defined in Exchange Act Rules <FONT STYLE="white-space:nowrap">13a-15(e)</FONT> and <FONT STYLE="white-space:nowrap">15d-15(e))</FONT> and internal control over financial reporting (as defined in Exchange Act Rules <FONT
STYLE="white-space:nowrap">13a-15(f)</FONT> and <FONT STYLE="white-space:nowrap">15d-15(f))</FONT> for the registrant and have: </P> <P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(a)
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> <P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(b) 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> <P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(c) evaluated the effectiveness of
the registrant&#146;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 our evaluation; and
</P> <P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(d) disclosed in this report any change in the registrant&#146;s internal control over financial reporting that occurred during the
registrant&#146;s most recent fiscal quarter (the registrant&#146;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#146;s internal control over
financial reporting; and </P> <P STYLE="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">5. The registrant&#146;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control
over financial reporting, to the registrant&#146;s auditors and the audit committee of registrant&#146;s board of directors (or persons performing the equivalent function): </P>
<P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(a) 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&#146;s ability to record, process, summarize and report financial information; and </P>
<P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(b) any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#146;s
internal control over financial reporting. </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Date April&nbsp;17, 2023 </P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="40%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt">


<TR>

<TD WIDTH="100%"></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:1pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman">/s/ G<SMALL>REGORY</SMALL> A. W<SMALL>OODS</SMALL></P></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">Gregory A. Woods</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">President and Chief Executive Officer</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">(Principal Executive Officer)</TD></TR>
</TABLE>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>5
<FILENAME>d415415dex312.htm
<DESCRIPTION>EX-31.2
<TEXT>
<HTML><HEAD>
<TITLE>EX-31.2</TITLE>
</HEAD>
 <BODY BGCOLOR="WHITE">


<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right"><B>Exhibit 31.2 </B></P>
<P STYLE="margin-top:24pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>CERTIFICATION OF THE CHIEF FINANCIAL OFFICER PURSUANT TO </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>RULES <FONT STYLE="white-space:nowrap">13a-14(a)</FONT> AND <FONT STYLE="white-space:nowrap">15d-14(a)</FONT> UNDER THE SECURITIES EXCHANGE
ACT OF 1934, </B></P> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>AS ADOPTED PURSUANT TO SECTION 302 OF </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>THE SARBANES-OXLEY ACT OF 2002 </B></P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">I, David
S. Smith, certify that: </P> <P STYLE="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">1. I have reviewed this annual report on Form <FONT STYLE="white-space:nowrap">10-K</FONT> of AstroNova, Inc.; </P>
<P STYLE="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">2. 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> <P STYLE="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">3.
Based on my knowledge, the financial statements, and other financial information included in this annual 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> <P STYLE="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">4. The registrant&#146;s other certifying officer and I are responsible for establishing and maintaining disclosure
controls and procedures (as defined in Exchange Act Rules <FONT STYLE="white-space:nowrap">13a-15(e)</FONT> and <FONT STYLE="white-space:nowrap">15d-15(e))</FONT> and internal control over financial reporting (as defined in Exchange Act Rules <FONT
STYLE="white-space:nowrap">13a-15(f)</FONT> and <FONT STYLE="white-space:nowrap">15d-15(f))</FONT> for the registrant and have: </P> <P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(a)
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> <P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(b) 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> <P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(c) evaluated the effectiveness of
the registrant&#146;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 our evaluation; and
</P> <P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(d) disclosed in this report any change in the registrant&#146;s internal control over financial reporting that occurred during the
registrant&#146;s most recent fiscal quarter (the registrant&#146;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#146;s internal control over
financial reporting; and </P> <P STYLE="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">5. The registrant&#146;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control
over financial reporting, to the registrant&#146;s auditors and the audit committee of registrant&#146;s board of directors (or persons performing the equivalent function): </P>
<P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(a) 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&#146;s ability to record, process, summarize and report financial information; and </P>
<P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(b) any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#146;s
internal control over financial reporting. </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Date April&nbsp;17, 2023 </P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="40%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt">


<TR>

<TD WIDTH="100%"></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:1pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman">/s/ David S. Smith</P></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">David S. Smith</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Vice President, Chief Financial Officer and</P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Treasurer (Principal Financial Officer and</P> <P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman">Principal Accounting
Officer)</P></TD></TR>
</TABLE>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>6
<FILENAME>d415415dex321.htm
<DESCRIPTION>EX-32.1
<TEXT>
<HTML><HEAD>
<TITLE>EX-32.1</TITLE>
</HEAD>
 <BODY BGCOLOR="WHITE">


<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right"><B>Exhibit 32.1 </B></P>
<P STYLE="margin-top:24pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>AstroNova Inc. </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>CERTIFICATION OF THE CHIEF EXECUTIVE OFFICER </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>PURSUANT TO 18 U.S.C. SECTION 1350, </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>AS ADOPTED PURSUANT TO SECTION 906 OF THE </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>SARBANES-OXLEY ACT OF 2002 </B></P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">In connection
with the Annual Report on Form <FONT STYLE="white-space:nowrap">10-K</FONT> of AstroNova, Inc. (the &#147;Company&#148;) for the year ended January&nbsp;31, 2023, as filed with the Securities and Exchange Commission on the date hereof (the
&#147;Report&#148;), I, Gregory A. Woods, Chief Executive Officer, hereby certify, to my best knowledge and believe pursuant to 18 U.S.C. Section&nbsp;1350, as adopted pursuant to Section&nbsp;906 of the Sarbanes-Oxley Act of 2002, that: </P>
<P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(a) The Report fully complies with the requirements of Section&nbsp;13(a) or 15(d) of the Securities Exchange Act of 1934; and </P>
<P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(b) The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the
Company. </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Dated this 17th day of April 2023 </P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="40%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt">


<TR>

<TD WIDTH="100%"></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:1pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman">/s/ G<SMALL>REGORY</SMALL> A. W<SMALL>OODS</SMALL></P></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">Gregory A. Woods</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">President and Chief Executive Officer</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman">(Principal Executive Officer)</P></TD></TR>
</TABLE> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">A signed original of this written statement required by Section&nbsp;906 has been provided to AstroNova, Inc. and will be
retained by AstroNova, Inc. and furnished to the Securities and Exchange Commission or its staff upon request. </P>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>7
<FILENAME>d415415dex322.htm
<DESCRIPTION>EX-32.2
<TEXT>
<HTML><HEAD>
<TITLE>EX-32.2</TITLE>
</HEAD>
 <BODY BGCOLOR="WHITE">


<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right"><B>Exhibit 32.2 </B></P>
<P STYLE="margin-top:24pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>AstroNova Inc. </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>CERTIFICATION OF THE CHIEF FINANCIAL OFFICER </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>PURSUANT TO 18 U.S.C. SECTION 1350, </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>AS ADOPTED PURSUANT TO SECTION 906 OF THE </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>SARBANES-OXLEY ACT OF 2002 </B></P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">In connection
with the Annual Report on Form <FONT STYLE="white-space:nowrap">10-K</FONT> of AstroNova , Inc. (the &#147;Company&#148;) for the year ended January&nbsp;31, 2023, as filed with the Securities and Exchange Commission on the date hereof (the
&#147;Report&#148;), I,&nbsp;David S. Smith, Vice President, Chief Financial Officer and Treasurer, hereby certify, to my best knowledge and believe pursuant to 18 U.S.C. Section&nbsp;1350, as adopted pursuant to Section&nbsp;906 of the
Sarbanes-Oxley Act of 2002, that: </P> <P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(a) The Report fully complies with the requirements of Section&nbsp;13(a) or 15(d) of the Securities
Exchange Act of 1934; and </P> <P STYLE="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman">(b) The information contained in the Report fairly presents, in all material respects, the financial condition
and results of operations of the Company. </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Dated this 17th day of April 2023 </P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="40%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt">


<TR>

<TD WIDTH="100%"></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:1pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman">/s/ David S. Smith</P></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">David S. Smith</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">Vice President, Chief Financial Officer and Treasurer (Principal Financial Officer and Principal Accounting Officer)</TD></TR>
</TABLE> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">A signed original of this written statement required by Section&nbsp;906 has been provided to AstroNova, Inc. and will be
retained by AstroNova, Inc. and furnished to the Securities and Exchange Commission or its staff upon request. </P>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>8
<FILENAME>alot-20230131.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by DFIN XBRL Instance Document - http://www.dfinsolutions.com/ - Version R3.0 - on 18-April-2023 [01:16:42] {AM}-->
<schema targetNamespace="http://astro-med.com/20230131" elementFormDefault="qualified" xmlns:alot="http://astro-med.com/20230131" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:country="http://xbrl.sec.gov/country/2022" xmlns:currency="http://xbrl.sec.gov/currency/2022" xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:exch="http://xbrl.sec.gov/exch/2022" xmlns:naics="http://xbrl.sec.gov/naics/2022" xmlns:sic="http://xbrl.sec.gov/sic/2022" xmlns:us-types="http://fasb.org/us-types/2022" xmlns:stpr="http://xbrl.sec.gov/stpr/2022" xmlns:deprecated="http://www.xbrl.org/2009/arcrole/fact-explanatoryFact" xmlns:srt="http://fasb.org/srt/2022" xmlns:srt-types="http://fasb.org/srt-types/2022" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:us-gaap-supplement="http://fasb.org/us-gaap-sup/2022q3" xmlns:srt-supplement="http://fasb.org/srt-sup/2022q3">
<annotation>
<appinfo>
<link:roleType roleURI="http://astro-med.com/role/CoverPage" id="CoverPage">
<link:definition>1001 - Document - Cover Page</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ConsolidatedBalanceSheets" id="ConsolidatedBalanceSheets">
<link:definition>1002 - Statement - Consolidated Balance Sheets</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical" id="ConsolidatedBalanceSheetsParenthetical">
<link:definition>1003 - Statement - Consolidated Balance Sheets (Parenthetical)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ConsolidatedStatementsOfIncome" id="ConsolidatedStatementsOfIncome">
<link:definition>1004 - Statement - Consolidated Statements of Income</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome" id="ConsolidatedStatementsOfComprehensiveIncome">
<link:definition>1005 - Statement - Consolidated Statements of Comprehensive Income</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity" id="ConsolidatedStatementsOfChangesInShareholdersEquity">
<link:definition>1006 - Statement - Consolidated Statements of Changes in Shareholders' Equity</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquityParenthetical" id="ConsolidatedStatementsOfChangesInShareholdersEquityParenthetical">
<link:definition>1007 - Statement - Consolidated Statements of Changes in Shareholders' Equity (Parenthetical)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ConsolidatedStatementsOfCashFlows" id="ConsolidatedStatementsOfCashFlows">
<link:definition>1008 - Statement - Consolidated Statements of Cash Flows</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/SummaryOfSignificantAccountingPolicies" id="SummaryOfSignificantAccountingPolicies">
<link:definition>1009 - Disclosure - Summary of Significant Accounting Policies</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/Acquisitions" id="Acquisitions">
<link:definition>1010 - Disclosure - Acquisitions</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/RevenueRecognition" id="RevenueRecognition">
<link:definition>1011 - Disclosure - Revenue Recognition</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IntangibleAssets" id="IntangibleAssets">
<link:definition>1012 - Disclosure - Intangible Assets</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/Inventories" id="Inventories">
<link:definition>1013 - Disclosure - Inventories</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/PropertyPlantAndEquipment" id="PropertyPlantAndEquipment">
<link:definition>1014 - Disclosure - Property, Plant and Equipment</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/AccruedExpenses" id="AccruedExpenses">
<link:definition>1015 - Disclosure - Accrued Expenses</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebt" id="CreditAgreementAndLongTermDebt">
<link:definition>1016 - Disclosure - Credit Agreement and Long-Term Debt</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/PaycheckProtectionProgramLoan" id="PaycheckProtectionProgramLoan">
<link:definition>1017 - Disclosure - Paycheck Protection Program Loan</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagement" id="DerivativeFinancialInstrumentsAndRiskManagement">
<link:definition>1018 - Disclosure - Derivative Financial Instruments and Risk Management</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/EmployeeRetentionCredit" id="EmployeeRetentionCredit">
<link:definition>1019 - Disclosure - Employee Retention Credit</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/RoyaltyObligation" id="RoyaltyObligation">
<link:definition>1020 - Disclosure - Royalty Obligation</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/Leases" id="Leases">
<link:definition>1021 - Disclosure - Leases</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/AccumulatedOtherComprehensiveLoss" id="AccumulatedOtherComprehensiveLoss">
<link:definition>1022 - Disclosure - Accumulated Other Comprehensive Loss</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ShareholdersEquity" id="ShareholdersEquity">
<link:definition>1023 - Disclosure - Shareholders' Equity</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ShareBasedCompensation" id="ShareBasedCompensation">
<link:definition>1024 - Disclosure - Share-Based Compensation</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IncomeTaxes" id="IncomeTaxes">
<link:definition>1025 - Disclosure - Income Taxes</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformation" id="NatureOfOperationsSegmentReportingAndGeographicalInformation">
<link:definition>1026 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/EmployeeBenefitPlans" id="EmployeeBenefitPlans">
<link:definition>1027 - Disclosure - Employee Benefit Plans</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ProductWarrantyLiability" id="ProductWarrantyLiability">
<link:definition>1028 - Disclosure - Product Warranty Liability</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ConcentrationOfRisk" id="ConcentrationOfRisk">
<link:definition>1029 - Disclosure - Concentration of Risk</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/CommitmentsAndContingencies" id="CommitmentsAndContingencies">
<link:definition>1030 - Disclosure - Commitments and Contingencies</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/FairValueMeasurements" id="FairValueMeasurements">
<link:definition>1031 - Disclosure - Fair Value Measurements</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReserves" id="ScheduleIiValuationAndQualifyingAccountsAndReserves">
<link:definition>1032 - Disclosure - Schedule II - Valuation and Qualifying Accounts and Reserves</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies" id="SummaryOfSignificantAccountingPoliciesPolicies">
<link:definition>1033 - Disclosure - Summary of Significant Accounting Policies (Policies)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/AcquisitionsTables" id="AcquisitionsTables">
<link:definition>1034 - Disclosure - Acquisitions (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/RevenueRecognitionTables" id="RevenueRecognitionTables">
<link:definition>1035 - Disclosure - Revenue Recognition (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IntangibleAssetsTables" id="IntangibleAssetsTables">
<link:definition>1036 - Disclosure - Intangible Assets (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/InventoriesTables" id="InventoriesTables">
<link:definition>1037 - Disclosure - Inventories (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/PropertyPlantAndEquipmentTables" id="PropertyPlantAndEquipmentTables">
<link:definition>1038 - Disclosure - Property, Plant and Equipment (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/AccruedExpensesTables" id="AccruedExpensesTables">
<link:definition>1039 - Disclosure - Accrued Expenses (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtTables" id="CreditAgreementAndLongTermDebtTables">
<link:definition>1040 - Disclosure - Credit Agreement and Long-Term Debt (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementTables" id="DerivativeFinancialInstrumentsAndRiskManagementTables">
<link:definition>1041 - Disclosure - Derivative Financial Instruments and Risk Management (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/LeasesTables" id="LeasesTables">
<link:definition>1042 - Disclosure - Leases (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/AccumulatedOtherComprehensiveLossTables" id="AccumulatedOtherComprehensiveLossTables">
<link:definition>1043 - Disclosure - Accumulated Other Comprehensive Loss (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ShareBasedCompensationTables" id="ShareBasedCompensationTables">
<link:definition>1044 - Disclosure - Share-Based Compensation (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IncomeTaxesTables" id="IncomeTaxesTables">
<link:definition>1045 - Disclosure - Income Taxes (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationTables" id="NatureOfOperationsSegmentReportingAndGeographicalInformationTables">
<link:definition>1046 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ProductWarrantyLiabilityTables" id="ProductWarrantyLiabilityTables">
<link:definition>1047 - Disclosure - Product Warranty Liability (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/FairValueMeasurementsTables" id="FairValueMeasurementsTables">
<link:definition>1048 - Disclosure - Fair Value Measurements (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail" id="SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail">
<link:definition>1049 - Disclosure - Summary of Significant Accounting Policies - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail" id="AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail">
<link:definition>1050 - Disclosure - Acquisitions - Summary of Purchase Price of Acquisition Allocated on Basis of Fair Value (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail" id="AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail">
<link:definition>1051 - Disclosure - Acquisitions - Summary of Fair Value of the Acquired Identifiable Intangible Assets and Related Estimated Useful Lives (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail" id="AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail">
<link:definition>1052 - Disclosure - Acquisitions - Summary of Revenue and Earnings Before Taxes (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail" id="AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail">
<link:definition>1053 - Disclosure - Acquisitions - Summary of Acquired Identifiable Intangible Asset (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/AcquisitionsAdditionalInformationDetail" id="AcquisitionsAdditionalInformationDetail">
<link:definition>1054 - Disclosure - Acquisitions - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail" id="RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail">
<link:definition>1055 - Disclosure - Revenue Recognition - Summary of Revenues Disaggregated by Primary Geographic Markets (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail" id="RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail">
<link:definition>1056 - Disclosure - Revenue Recognition - Summary of Revenues Disaggregated by Primary Product Type (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail" id="RevenueRecognitionAdditionalInformationDetail">
<link:definition>1057 - Disclosure - Revenue Recognition - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail" id="IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail">
<link:definition>1058 - Disclosure - Intangible Assets - Fair Value of Acquired Identifiable Intangible Assets and Related Estimated Useful Lives (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail" id="IntangibleAssetsAdditionalInformationDetail">
<link:definition>1059 - Disclosure - Intangible Assets - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail" id="IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail">
<link:definition>1060 - Disclosure - Intangible Assets - Summary of Estimated Amortization Expense (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/InventoriesAdditionalInformationDetail" id="InventoriesAdditionalInformationDetail">
<link:definition>1061 - Disclosure - Inventories - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail" id="InventoriesComponentsOfInventoriesDetail">
<link:definition>1062 - Disclosure - Inventories - Components of Inventories (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail" id="PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail">
<link:definition>1063 - Disclosure - Property, Plant and Equipment - Summary of Property, Plant and Equipment (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail" id="PropertyPlantAndEquipmentAdditionalInformationDetail">
<link:definition>1064 - Disclosure - Property, Plant and Equipment - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail" id="AccruedExpensesSummaryOfAccruedExpensesDetail">
<link:definition>1065 - Disclosure - Accrued Expenses - Summary of Accrued Expenses (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail" id="CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail">
<link:definition>1066 - Disclosure - Credit Agreement and Long- Term Debt - Schedule of Long Term Debt in the Accompanying Condensed Consolidated Balance Sheets (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail" id="CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail">
<link:definition>1067 - Disclosure - Credit Agreement and Long- Term Debt- Schedule of Required Principal Payments Remaining on Long Term Debt Outstanding (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail" id="CreditAgreementAndLongTermDebtAdditionalInformationDetail">
<link:definition>1068 - Disclosure - Credit Agreement and Long- Term Debt - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail" id="PaycheckProtectionProgramLoanAdditionalInformationDetail">
<link:definition>1069 - Disclosure - Paycheck Protection Program Loan - Additional information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail" id="DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail">
<link:definition>1070 - Disclosure - Derivative Financial Instruments and Risk Management - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail" id="DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail">
<link:definition>1071 - Disclosure - Derivative Financial Instruments and Risk Management - Schedule of Impact of the Derivative Instruments in the Condensed Consolidated Financial Statements (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail" id="EmployeeRetentionCreditAdditionalInformationDetail">
<link:definition>1072 - Disclosure - Employee Retention Credit - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail" id="RoyaltyObligationAdditionalInformationDetail">
<link:definition>1073 - Disclosure - Royalty Obligation - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/LeasesAdditionalInformationDetail" id="LeasesAdditionalInformationDetail">
<link:definition>1074 - Disclosure - Leases - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail" id="LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail">
<link:definition>1075 - Disclosure - Leases - Schedule Of Balance Sheet And Other Information Related To Operating Leases (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/LeasesLeaseCostInformationDetail" id="LeasesLeaseCostInformationDetail">
<link:definition>1076 - Disclosure - Leases - Lease Cost Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail" id="LeasesMaturitiesOfLeaseLiabilitiesDetail">
<link:definition>1077 - Disclosure - Leases - Maturities of lease liabilities (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/LeasesSupplementalCashFlowInformationDetail" id="LeasesSupplementalCashFlowInformationDetail">
<link:definition>1078 - Disclosure - Leases - Supplemental cash flow information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail" id="AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail">
<link:definition>1079 - Disclosure - Accumulated Other Comprehensive Loss - Changes in Balance of Accumulated Other Comprehensive Loss (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail" id="ShareholdersEquityAdditionalInformationDetail">
<link:definition>1080 - Disclosure - Shareholders' Equity - Additional information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail" id="ShareBasedCompensationAdditionalInformationDetail">
<link:definition>1081 - Disclosure - Share-Based Compensation - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail" id="ShareBasedCompensationShareBasedCompensationExpenseDetail">
<link:definition>1082 - Disclosure - Share-Based Compensation - Share-Based Compensation Expense (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail" id="ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail">
<link:definition>1083 - Disclosure - Share-Based Compensation - Aggregated Information Regarding Stock Options Granted (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail" id="ShareBasedCompensationSummaryOfOptionsOutstandingDetail">
<link:definition>1084 - Disclosure - Share-Based Compensation - Summary of Options Outstanding (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail" id="ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail">
<link:definition>1085 - Disclosure - Share-Based Compensation - Aggregated Information Regarding RSUs and RSAs Granted (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail" id="IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail">
<link:definition>1086 - Disclosure - Income Taxes - Components of Income before Income Taxes (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail" id="IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail">
<link:definition>1087 - Disclosure - Income Taxes - Components of Provision for Income Taxes (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail" id="IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail">
<link:definition>1088 - Disclosure - Income Taxes - Reconciliation of income tax provision/(benefit) With The Amount Computed By Applying The Statutory Federal Income Tax Rate To The Income Before Income Tax Provision/(benefit) (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail" id="IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail">
<link:definition>1089 - Disclosure - Income Taxes - Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesParentheticalDetail" id="IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesParentheticalDetail">
<link:definition>1090 - Disclosure - Income Taxes - Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities (Parenthetical) (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail" id="IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail">
<link:definition>1091 - Disclosure - Income Taxes - Change in Balance of Unrecognized Tax Benefits, Excluding Interest and Penalties (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail" id="IncomeTaxesAdditionalInformationDetail">
<link:definition>1092 - Disclosure - Income Taxes - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail" id="NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail">
<link:definition>1093 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail" id="NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail">
<link:definition>1094 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information - Net Sales and Segment Operating Profit (loss)  for Each Reporting Segment (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail" id="NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail">
<link:definition>1095 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information - Summary of Other Information by Segment (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail" id="NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail">
<link:definition>1096 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information - Summary of Selected Financial Information by Geographic Area (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/EmployeeBenefitPlansAdditionalInformationDetail" id="EmployeeBenefitPlansAdditionalInformationDetail">
<link:definition>1097 - Disclosure - Employee Benefit Plans - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ProductWarrantyLiabilityActivityInProductWarrantyLiabilityDetail" id="ProductWarrantyLiabilityActivityInProductWarrantyLiabilityDetail">
<link:definition>1098 - Disclosure - Product Warranty Liability - Activity in Product Warranty Liability (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ProductWarrantyLiabilityAdditionalInformationDetail" id="ProductWarrantyLiabilityAdditionalInformationDetail">
<link:definition>1099 - Disclosure - Product Warranty Liability - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail" id="ConcentrationOfRiskAdditionalInformationDetail">
<link:definition>1100 - Disclosure - Concentration of Risk - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/CommitmentsAndContingenciesAdditionalInformationDetail" id="CommitmentsAndContingenciesAdditionalInformationDetail">
<link:definition>1101 - Disclosure - Commitments and Contingencies - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail" id="FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail">
<link:definition>1102 - Disclosure - Fair Value Measurements - Schedule of Company's Long-Term Debt Including the Current Portion Not Reflected in Financial Statements at Fair Value (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail" id="ScheduleIiValuationAndQualifyingAccountsAndReservesDetail">
<link:definition>1103 - Disclosure - Schedule II - Valuation and Qualifying Accounts and Reserves (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:linkbaseRef xlink:type="simple" xlink:href="alot-20230131_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
<link:linkbaseRef xlink:type="simple" xlink:href="alot-20230131_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
<link:linkbaseRef xlink:type="simple" xlink:href="alot-20230131_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
<link:linkbaseRef xlink:type="simple" xlink:href="alot-20230131_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
</appinfo>
</annotation>
<import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
<import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" />
<import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
<import namespace="http://fasb.org/us-gaap/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd" />
<import namespace="http://xbrl.sec.gov/country/2022" schemaLocation="https://xbrl.sec.gov/country/2022/country-2022.xsd" />
<import namespace="http://xbrl.sec.gov/currency/2022" schemaLocation="https://xbrl.sec.gov/currency/2022/currency-2022.xsd" />
<import namespace="http://xbrl.sec.gov/exch/2022" schemaLocation="https://xbrl.sec.gov/exch/2022/exch-2022.xsd" />
<import namespace="http://xbrl.sec.gov/naics/2022" schemaLocation="https://xbrl.sec.gov/naics/2022/naics-2022.xsd" />
<import namespace="http://xbrl.sec.gov/sic/2022" schemaLocation="https://xbrl.sec.gov/sic/2022/sic-2022.xsd" />
<import namespace="http://xbrl.sec.gov/stpr/2022" schemaLocation="https://xbrl.sec.gov/stpr/2022/stpr-2022.xsd" />
<import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd" />
<import namespace="http://www.xbrl.org/2009/role/net" schemaLocation="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd" />
<import namespace="http://www.xbrl.org/2009/arcrole/fact-explanatoryFact" schemaLocation="http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd" />
<import namespace="http://xbrl.sec.gov/dei/2022" schemaLocation="https://xbrl.sec.gov/dei/2022/dei-2022.xsd" />
<import namespace="http://fasb.org/us-types/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd" />
<import namespace="http://fasb.org/srt-types/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd" />
<import namespace="http://fasb.org/srt/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd" />
<import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd" />
<import namespace="http://fasb.org/us-gaap-sup/2022q3" schemaLocation="https://xbrl.fasb.org/us-gaap/2022q3/us-gaap-sup-2022q3.xsd" />
<import namespace="http://fasb.org/srt-sup/2022q3" schemaLocation="https://xbrl.fasb.org/srt/2022q3/srt-sup-2022q3.xsd" />
<element name="ErcReceivables" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_ErcReceivables" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="RoyaltyObligationCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_RoyaltyObligationCurrent" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="RoyaltyObligationNonCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_RoyaltyObligationNonCurrent" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="ReclassifcationOfInventoriesToPropertyPlantAndEquipment" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="PaymentsOfMinimumGuaranteeRoyaltyObligation" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_PaymentsOfMinimumGuaranteeRoyaltyObligation" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="OtherEmployeeRetentionCreditReceivable" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_OtherEmployeeRetentionCreditReceivable" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="DisclosureForPaycheckProtectionProgramLoanTextBlock" type="dtr-types:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_DisclosureForPaycheckProtectionProgramLoanTextBlock" substitutionGroup="xbrli:item" />
<element name="EmployeeRetentionCreditDisclosureAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_EmployeeRetentionCreditDisclosureAbstract" substitutionGroup="xbrli:item" />
<element name="DisclosureForEmployeeRetentionCreditTextBlock" type="dtr-types:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_DisclosureForEmployeeRetentionCreditTextBlock" substitutionGroup="xbrli:item" />
<element name="RoyaltyObligationDisclosureAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RoyaltyObligationDisclosureAbstract" substitutionGroup="xbrli:item" />
<element name="DisclosureForTheHoneywellRoyaltyObligationTextBlock" type="dtr-types:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock" substitutionGroup="xbrli:item" />
<element name="ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock" type="dtr-types:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock" substitutionGroup="xbrli:item" />
<element name="SummaryOfSignificantAccountingPoliciesTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_SummaryOfSignificantAccountingPoliciesTable" substitutionGroup="xbrldt:hypercubeItem" />
<element name="PromissoryNoteMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_PromissoryNoteMember" substitutionGroup="xbrli:item" />
<element name="ComputerEquipmentAndSoftwareMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_ComputerEquipmentAndSoftwareMember" substitutionGroup="xbrli:item" />
<element name="BuildingAndLeaseholdImprovementsMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_BuildingAndLeaseholdImprovementsMember" substitutionGroup="xbrli:item" />
<element name="PaycheckProtectionProgramLoanMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_PaycheckProtectionProgramLoanMember" substitutionGroup="xbrli:item" />
<element name="AirborneProductMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_AirborneProductMember" substitutionGroup="xbrli:item" />
<element name="GreenwoodCreditUnionMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_GreenwoodCreditUnionMember" substitutionGroup="xbrli:item" />
<element name="SummaryOfSignificantAccountingPoliciesLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_SummaryOfSignificantAccountingPoliciesLineItems" substitutionGroup="xbrli:item" />
<element name="CashEquivalentsMaturityPeriodDescription" type="xbrli:stringItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_CashEquivalentsMaturityPeriodDescription" substitutionGroup="xbrli:item" />
<element name="ProductsWarrantyPeriod" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_ProductsWarrantyPeriod" substitutionGroup="xbrli:item" />
<element name="CashHeldInForeignBankAccounts" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_CashHeldInForeignBankAccounts" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="PercentageOfServiceRevenueToTotalRevenue" type="dtr-types:percentItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_PercentageOfServiceRevenueToTotalRevenue" substitutionGroup="xbrli:item" />
<element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="BusinessAcquisitionProFormaInformationTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_BusinessAcquisitionProFormaInformationTable" substitutionGroup="xbrldt:hypercubeItem" />
<element name="BusinessAcquisitionProFormaInformationLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_BusinessAcquisitionProFormaInformationLineItems" substitutionGroup="xbrli:item" />
<element name="BusinessAcquisitionRevenue" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_BusinessAcquisitionRevenue" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="BusinessAcquisitionEarningBeforeTaxes" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_BusinessAcquisitionEarningBeforeTaxes" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="AgreementWithAstroMachineForAssetAcquisitionsMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_AgreementWithAstroMachineForAssetAcquisitionsMember" substitutionGroup="xbrli:item" />
<element name="PurchasePriceIntoAnEscrowAccount" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_PurchasePriceIntoAnEscrowAccount" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="NumberOfAcresOfLand" type="xbrli:stringItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_NumberOfAcresOfLand" substitutionGroup="xbrli:item" />
<element name="RoyaltyGuaranteesCommitmentsAmountNonCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="FairValueOfIntangibleAssetsMeasurementInput" type="xbrli:decimalItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_FairValueOfIntangibleAssetsMeasurementInput" substitutionGroup="xbrli:item" />
<element name="RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="MeasurementInputRoyaltyRateMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_MeasurementInputRoyaltyRateMember" substitutionGroup="xbrli:item" />
<element name="MeasurementInputCustomerAttritionRateMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_MeasurementInputCustomerAttritionRateMember" substitutionGroup="xbrli:item" />
<element name="NonCurrentLiabilityMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_NonCurrentLiabilityMember" substitutionGroup="xbrli:item" />
<element name="RoyaltyPaymentsDueAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RoyaltyPaymentsDueAxis" substitutionGroup="xbrldt:dimensionItem" />
<element name="RoyaltyPaymentsDueDomain" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RoyaltyPaymentsDueDomain" substitutionGroup="xbrli:item" />
<element name="RoyaltyPaymentsDueInNextTwelveMonthsMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RoyaltyPaymentsDueInNextTwelveMonthsMember" substitutionGroup="xbrli:item" />
<element name="RoyaltyPaymentsDueYearTwoMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RoyaltyPaymentsDueYearTwoMember" substitutionGroup="xbrli:item" />
<element name="RoyaltyPaymentsDueYearThreeMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RoyaltyPaymentsDueYearThreeMember" substitutionGroup="xbrli:item" />
<element name="RoyaltyPaymentsDueYearFourMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RoyaltyPaymentsDueYearFourMember" substitutionGroup="xbrli:item" />
<element name="RoyaltyPaymentsDueYearFiveMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RoyaltyPaymentsDueYearFiveMember" substitutionGroup="xbrli:item" />
<element name="OthersCountriesMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_OthersCountriesMember" substitutionGroup="xbrli:item" />
<element name="CentralAndSouthAmericaMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_CentralAndSouthAmericaMember" substitutionGroup="xbrli:item" />
<element name="ServiceAndOtherMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_ServiceAndOtherMember" substitutionGroup="xbrli:item" />
<element name="HardwareProductsMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_HardwareProductsMember" substitutionGroup="xbrli:item" />
<element name="SuppliesMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_SuppliesMember" substitutionGroup="xbrli:item" />
<element name="ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="SettlementofContractClaimRevenueRecognized" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_SettlementofContractClaimRevenueRecognized" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="AdditionalCapitalizedContractCostsAmortizationPeriodRemaining" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining" substitutionGroup="xbrli:item" />
<element name="CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" substitutionGroup="xbrli:item" />
<element name="CapitalizedContractCostNetLongTermAndShortTerm" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_CapitalizedContractCostNetLongTermAndShortTerm" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="SettlementOfContractClaim" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_SettlementOfContractClaim" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="AerospaceCustomerMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_AerospaceCustomerMember" substitutionGroup="xbrli:item" />
<element name="ExistingTechnologyMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_ExistingTechnologyMember" substitutionGroup="xbrli:item" />
<element name="DistributorRelationsMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_DistributorRelationsMember" substitutionGroup="xbrli:item" />
<element name="HoneywellAssetPurchaseAndLicenseAgreementMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_HoneywellAssetPurchaseAndLicenseAgreementMember" substitutionGroup="xbrli:item" />
<element name="TrojanlabelApSMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_TrojanlabelApSMember" substitutionGroup="xbrli:item" />
<element name="MiltopeCorporationMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_MiltopeCorporationMember" substitutionGroup="xbrli:item" />
<element name="RuggedInformationTechnologyEquipmentCorporationMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RuggedInformationTechnologyEquipmentCorporationMember" substitutionGroup="xbrli:item" />
<element name="FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="IntangibleAssetsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_IntangibleAssetsTable" substitutionGroup="xbrldt:hypercubeItem" />
<element name="IntangibleAssetsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_IntangibleAssetsLineItems" substitutionGroup="xbrli:item" />
<element name="DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="InventoryDemonstrationEquipment" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_InventoryDemonstrationEquipment" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="AccruedPayrollAndSalesTaxesCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_AccruedPayrollAndSalesTaxesCurrent" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="AccruedStockHolderRelationFees" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_AccruedStockHolderRelationFees" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="AccruedFreight" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_AccruedFreight" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="TermLoanDueAugustFourthTwoThousandAndTwentySevenMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember" substitutionGroup="xbrli:item" />
<element name="TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember" substitutionGroup="xbrli:item" />
<element name="TermLoanMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_TermLoanMember" substitutionGroup="xbrli:item" />
<element name="BankOfAmericaMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_BankOfAmericaMember" substitutionGroup="xbrli:item" />
<element name="DebtInstrumentAdditionalBasisSpread" type="dtr-types:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_DebtInstrumentAdditionalBasisSpread" substitutionGroup="xbrli:item" />
<element name="DetailsOneAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_DetailsOneAxis" substitutionGroup="xbrldt:dimensionItem" />
<element name="DetailsOneDomain" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_DetailsOneDomain" substitutionGroup="xbrli:item" />
<element name="AdditionalTermLoanAvailedMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_AdditionalTermLoanAvailedMember" substitutionGroup="xbrli:item" />
<element name="DetailsAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_DetailsAxis" substitutionGroup="xbrldt:dimensionItem" />
<element name="DetailsDomain" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_DetailsDomain" substitutionGroup="xbrli:item" />
<element name="BeforeAmendmentToTheCreditAgreementMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_BeforeAmendmentToTheCreditAgreementMember" substitutionGroup="xbrli:item" />
<element name="CreditAgreementAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_CreditAgreementAxis" substitutionGroup="xbrldt:dimensionItem" />
<element name="CreditAgreementDomain" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_CreditAgreementDomain" substitutionGroup="xbrli:item" />
<element name="SecondAmendmentCreditAgreementMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_SecondAmendmentCreditAgreementMember" substitutionGroup="xbrli:item" />
<element name="CashPaidTerminationOfSwaps" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_CashPaidTerminationOfSwaps" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="CashFlowHedgeMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_CashFlowHedgeMember" substitutionGroup="xbrli:item" />
<element name="EmployeeRetentionCreditDisclosureTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_EmployeeRetentionCreditDisclosureTable" substitutionGroup="xbrldt:hypercubeItem" />
<element name="EmployeeRetentionCreditDisclosureLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_EmployeeRetentionCreditDisclosureLineItems" substitutionGroup="xbrli:item" />
<element name="ThresholdQualifiedWagesPerEmployeePerCalendarQuarter" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="EmployeeRetentionCredit" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_EmployeeRetentionCredit" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit" type="dtr-types:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit" substitutionGroup="xbrli:item" />
<element name="EmployeeRetentionCreditReceivableSellingAndMarketing" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_EmployeeRetentionCreditReceivableSellingAndMarketing" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="EmployeeRetentionCreditReceivableResearchAndDevelopment" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_EmployeeRetentionCreditReceivableResearchAndDevelopment" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="EmployeeRetentionCreditReceivables" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_EmployeeRetentionCreditReceivables" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="EmployeeRetentionCreditReceived" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_EmployeeRetentionCreditReceived" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages" type="dtr-types:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages" substitutionGroup="xbrli:item" />
<element name="CaresActMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_CaresActMember" substitutionGroup="xbrli:item" />
<element name="PeriodAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_PeriodAxis" substitutionGroup="xbrldt:dimensionItem" />
<element name="PeriodDomain" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_PeriodDomain" substitutionGroup="xbrli:item" />
<element name="ExcessRoyaltyPayments" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_ExcessRoyaltyPayments" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="PaymentTermPeriod" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_PaymentTermPeriod" substitutionGroup="xbrli:item" />
<element name="MinimumRoyaltyPaymentObligation" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_MinimumRoyaltyPaymentObligation" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="GuaranteedMinimumRoyaltyPayments" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_GuaranteedMinimumRoyaltyPayments" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="OperatingLeasesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_OperatingLeasesAbstract" substitutionGroup="xbrli:item" />
<element name="CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract" substitutionGroup="xbrli:item" />
<element name="UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="StockDeliveredDuringPeriodSharesStockOptionsExercise" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_StockDeliveredDuringPeriodSharesStockOptionsExercise" substitutionGroup="xbrli:item" />
<element name="RestrictedStockAwardMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RestrictedStockAwardMember" substitutionGroup="xbrli:item" />
<element name="EmployeeStockPurchasePlanMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_EmployeeStockPurchasePlanMember" substitutionGroup="xbrli:item" />
<element name="TwoThousandEighteenEquityIncentivePlanMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_TwoThousandEighteenEquityIncentivePlanMember" substitutionGroup="xbrli:item" />
<element name="TwoThousandFifteenEquityIncentivePlanMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_TwoThousandFifteenEquityIncentivePlanMember" substitutionGroup="xbrli:item" />
<element name="TwoThousandSevenEquityIncentivePlanMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_TwoThousandSevenEquityIncentivePlanMember" substitutionGroup="xbrli:item" />
<element name="TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember" substitutionGroup="xbrli:item" />
<element name="PriorEmployeeStockPurchasePlanMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_PriorEmployeeStockPurchasePlanMember" substitutionGroup="xbrli:item" />
<element name="ReservationOfSharesUnderEmployeeStockPurchasePlan" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_ReservationOfSharesUnderEmployeeStockPurchasePlan" substitutionGroup="xbrli:item" />
<element name="EmployeeStockPurchasePlanExpense" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_EmployeeStockPurchasePlanExpense" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="RangeFiveMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RangeFiveMember" substitutionGroup="xbrli:item" />
<element name="RangeFourMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RangeFourMember" substitutionGroup="xbrli:item" />
<element name="RangeThreeMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RangeThreeMember" substitutionGroup="xbrli:item" />
<element name="RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember" substitutionGroup="xbrli:item" />
<element name="IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="IncomeTaxReconciliationPppLoanForgiveness" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_IncomeTaxReconciliationPppLoanForgiveness" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="Incometaxreconciliationchangeinreserves" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_Incometaxreconciliationchangeinreserves" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="DeferredTaxAssetsUnrecognizedTaxBenefits" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_DeferredTaxAssetsUnrecognizedTaxBenefits" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="DeferredTaxAssetsDeferredServiceContractRevenue" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_DeferredTaxAssetsDeferredServiceContractRevenue" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="DeferredTaxAssetsRoyaltyLiability" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_DeferredTaxAssetsRoyaltyLiability" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="DeferredTaxAssetsCapitalization" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_DeferredTaxAssetsCapitalization" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="DeferredTaxAssetsCompensationAccruals" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_DeferredTaxAssetsCompensationAccruals" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="DeferredTaxAssetsLiabilitiesGross" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_DeferredTaxAssetsLiabilitiesGross" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="IncreaseDecreaseInDeferredTaxAssets" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_IncreaseDecreaseInDeferredTaxAssets" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="DetailsOfIncomeTaxBenefitAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_DetailsOfIncomeTaxBenefitAxis" substitutionGroup="xbrldt:dimensionItem" />
<element name="DetailsOfIncomeTaxBenefitDomain" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_DetailsOfIncomeTaxBenefitDomain" substitutionGroup="xbrli:item" />
<element name="AdditionalForeignTaxCreditMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_AdditionalForeignTaxCreditMember" substitutionGroup="xbrli:item" />
<element name="TaxCreditsCarryForwardsMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_TaxCreditsCarryForwardsMember" substitutionGroup="xbrli:item" />
<element name="DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod" type="xbrli:stringItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod" substitutionGroup="xbrli:item" />
<element name="DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod" type="xbrli:stringItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod" substitutionGroup="xbrli:item" />
<element name="NumberOfCustomersAccountingForCreditRisk" type="xbrli:integerItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_NumberOfCustomersAccountingForCreditRisk" substitutionGroup="xbrli:item" />
<element name="ProductIdentificationMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_ProductIdentificationMember" substitutionGroup="xbrli:item" />
<element name="TestAndMeasurementMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_TestAndMeasurementMember" substitutionGroup="xbrli:item" />
<element name="PercentageOfOperatingProfitToNetSales" type="dtr-types:percentItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="alot_PercentageOfOperatingProfitToNetSales" substitutionGroup="xbrli:item" />
<element name="OtherCountriesMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_OtherCountriesMember" substitutionGroup="xbrli:item" />
<element name="Reimbursementreceivedfromvendor" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="alot_Reimbursementreceivedfromvendor" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="TradeAccountsPayablesMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_TradeAccountsPayablesMember" substitutionGroup="xbrli:item" />
<element name="CustomerMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="alot_CustomerMember" substitutionGroup="xbrli:item" />
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>9
<FILENAME>alot-20230131_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by DFIN XBRL Instance Document - http://www.dfinsolutions.com/ - Version R3.0 - on 18-April-2023 [01:16:42] {AM}-->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedBalanceSheets" roleURI="http://astro-med.com/role/ConsolidatedBalanceSheets" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfIncome" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfIncome" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfComprehensiveIncome" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfCashFlows" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfCashFlows" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail" roleURI="http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail" roleURI="http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#InventoriesComponentsOfInventoriesDetail" roleURI="http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail" roleURI="http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccruedExpensesSummaryOfAccruedExpensesDetail" roleURI="http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail" roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesMaturitiesOfLeaseLiabilitiesDetail" roleURI="http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail" roleURI="http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationShareBasedCompensationExpenseDetail" roleURI="http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail" roleURI="http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail" roleURI="http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail" roleURI="http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail" roleURI="http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail" />
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedStatementsOfIncome">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit" use="optional" order="1" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaap_OperatingIncomeLoss" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="loc_us-gaap_GrossProfit" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfRevenue" xlink:label="loc_us-gaap_CostOfRevenue" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit" xlink:to="loc_us-gaap_CostOfRevenue" use="optional" order="6" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaap_OperatingExpenses" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="loc_us-gaap_OperatingExpenses" use="optional" order="7" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaap_SellingAndMarketingExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses" xlink:to="loc_us-gaap_SellingAndMarketingExpense" use="optional" order="8" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense" use="optional" order="9" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense" use="optional" order="10" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaap_NonoperatingIncomeExpense" use="optional" order="11" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NonoperatingIncomeExpense" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense" use="optional" order="12" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NonoperatingIncomeExpense" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" use="optional" order="13" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaap_InterestExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NonoperatingIncomeExpense" xlink:to="loc_us-gaap_InterestExpense" use="optional" order="14" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NonoperatingIncomeExpense" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" use="optional" order="15" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NonoperatingIncomeExpense" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" use="optional" order="16" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedStatementsOfIncome">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" use="optional" order="17" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" use="optional" order="18" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" use="optional" order="4" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="loc_us-gaap_NetIncomeLoss" use="optional" order="6" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedStatementsOfCashFlows">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfMediumTermNotes" xlink:label="loc_us-gaap_RepaymentsOfMediumTermNotes" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_RepaymentsOfMediumTermNotes" use="optional" order="4" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDebtIssuanceCosts" xlink:label="loc_us-gaap_PaymentsOfDebtIssuanceCosts" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_PaymentsOfDebtIssuanceCosts" use="optional" order="5" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="loc_us-gaap_PaymentsOfDividendsCommonStock" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_PaymentsOfDividendsCommonStock" use="optional" order="6" weight="-1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PaymentsOfMinimumGuaranteeRoyaltyObligation" xlink:label="loc_ALOT_PaymentsOfMinimumGuaranteeRoyaltyObligation" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_ALOT_PaymentsOfMinimumGuaranteeRoyaltyObligation" use="optional" order="7" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromStockPlans" xlink:label="loc_us-gaap_ProceedsFromStockPlans" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_ProceedsFromStockPlans" use="optional" order="8" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" use="optional" order="9" weight="-1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" xlink:label="loc_ALOT_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_ALOT_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" use="optional" order="10" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfOtherLongTermDebt" xlink:label="loc_us-gaap_RepaymentsOfOtherLongTermDebt" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_RepaymentsOfOtherLongTermDebt" use="optional" order="11" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" use="optional" order="12" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" use="optional" order="13" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization" use="optional" order="14" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCosts" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_AmortizationOfFinancingCosts" use="optional" order="15" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_ShareBasedCompensation" use="optional" order="16" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits" use="optional" order="17" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" use="optional" order="18" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories" use="optional" order="19" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" use="optional" order="20" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" use="optional" order="21" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" use="optional" order="22" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaap_ProfitLoss" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_ProfitLoss" use="optional" order="23" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" use="optional" order="24" weight="-1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_OtherEmployeeRetentionCreditReceivable" xlink:label="loc_ALOT_OtherEmployeeRetentionCreditReceivable" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_ALOT_OtherEmployeeRetentionCreditReceivable" use="optional" order="25" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" use="optional" order="26" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" use="optional" order="27" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" use="optional" order="28" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1" use="optional" order="29" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" use="optional" order="30" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" use="optional" order="5" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" use="optional" order="6" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" xlink:label="loc_ALOT_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="loc_ALOT_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" use="optional" order="7" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" use="optional" order="2" weight="-1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" xlink:label="loc_ALOT_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="loc_ALOT_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" use="optional" order="3" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandAndLandImprovements" xlink:label="loc_us-gaap_LandAndLandImprovements" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="loc_us-gaap_LandAndLandImprovements" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="loc_us-gaap_BuildingsAndImprovementsGross" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="loc_us-gaap_MachineryAndEquipmentGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="loc_us-gaap_MachineryAndEquipmentGross" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareGross" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" use="optional" order="6" weight="-1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" use="optional" order="6" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:label="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" use="optional" order="2" weight="-1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" xlink:label="loc_ALOT_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="loc_ALOT_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" use="optional" order="3" weight="-1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockOptionPlanExpense" xlink:label="loc_us-gaap_StockOptionPlanExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="loc_us-gaap_StockOptionPlanExpense" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockExpense" xlink:label="loc_us-gaap_RestrictedStockExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="loc_us-gaap_RestrictedStockExpense" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeStockPurchasePlanExpense" xlink:label="loc_ALOT_EmployeeStockPurchasePlanExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="loc_ALOT_EmployeeStockPurchasePlanExpense" use="optional" order="3" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" use="optional" order="2" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentForeignTaxExpenseBenefit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_CurrentForeignTaxExpenseBenefit" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" use="optional" order="6" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" use="optional" order="7" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit" use="optional" order="8" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance" use="optional" order="1" weight="-1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsLiabilitiesGross" xlink:label="loc_ALOT_DeferredTaxAssetsLiabilitiesGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:to="loc_ALOT_DeferredTaxAssetsLiabilitiesGross" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaap_DeferredTaxAssetsGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_ALOT_DeferredTaxAssetsLiabilitiesGross" xlink:to="loc_us-gaap_DeferredTaxAssetsGross" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInventory" xlink:label="loc_us-gaap_DeferredTaxAssetsInventory" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_us-gaap_DeferredTaxAssetsInventory" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsRoyaltyLiability" xlink:label="loc_ALOT_DeferredTaxAssetsRoyaltyLiability" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_ALOT_DeferredTaxAssetsRoyaltyLiability" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" use="optional" order="6" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" use="optional" order="7" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsCompensationAccruals" xlink:label="loc_ALOT_DeferredTaxAssetsCompensationAccruals" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_ALOT_DeferredTaxAssetsCompensationAccruals" use="optional" order="8" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" use="optional" order="9" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsUnrecognizedTaxBenefits" xlink:label="loc_ALOT_DeferredTaxAssetsUnrecognizedTaxBenefits" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_ALOT_DeferredTaxAssetsUnrecognizedTaxBenefits" use="optional" order="10" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsDeferredServiceContractRevenue" xlink:label="loc_ALOT_DeferredTaxAssetsDeferredServiceContractRevenue" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_ALOT_DeferredTaxAssetsDeferredServiceContractRevenue" use="optional" order="11" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses" use="optional" order="12" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" use="optional" order="13" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="loc_us-gaap_DeferredTaxAssetsOther" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_us-gaap_DeferredTaxAssetsOther" use="optional" order="14" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" use="optional" order="15" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" xlink:label="loc_ALOT_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_ALOT_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" use="optional" order="16" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsCapitalization" xlink:label="loc_ALOT_DeferredTaxAssetsCapitalization" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="loc_ALOT_DeferredTaxAssetsCapitalization" use="optional" order="17" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_ALOT_DeferredTaxAssetsLiabilitiesGross" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities" use="optional" order="18" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" use="optional" order="19" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" use="optional" order="20" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesOther" use="optional" order="21" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" xlink:label="loc_ALOT_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:to="loc_ALOT_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" use="optional" order="22" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryGross" xlink:label="loc_us-gaap_InventoryGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet" xlink:to="loc_us-gaap_InventoryGross" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsAndSupplies" xlink:label="loc_us-gaap_InventoryRawMaterialsAndSupplies" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryGross" xlink:to="loc_us-gaap_InventoryRawMaterialsAndSupplies" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcess" xlink:label="loc_us-gaap_InventoryWorkInProcess" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryGross" xlink:to="loc_us-gaap_InventoryWorkInProcess" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoods" xlink:label="loc_us-gaap_InventoryFinishedGoods" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryGross" xlink:to="loc_us-gaap_InventoryFinishedGoods" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserves" xlink:label="loc_us-gaap_InventoryValuationReserves" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet" xlink:to="loc_us-gaap_InventoryValuationReserves" use="optional" order="5" weight="-1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="loc_us-gaap_AccruedProfessionalFeesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_us-gaap_AccruedProfessionalFeesCurrent" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedSalesCommissionCurrent" xlink:label="loc_us-gaap_AccruedSalesCommissionCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_us-gaap_AccruedSalesCommissionCurrent" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedPayrollAndSalesTaxesCurrent" xlink:label="loc_ALOT_AccruedPayrollAndSalesTaxesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_ALOT_AccruedPayrollAndSalesTaxesCurrent" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedStockHolderRelationFees" xlink:label="loc_ALOT_AccruedStockHolderRelationFees" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_ALOT_AccruedStockHolderRelationFees" use="optional" order="6" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent" use="optional" order="7" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedFreight" xlink:label="loc_ALOT_AccruedFreight" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_ALOT_AccruedFreight" use="optional" order="8" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaap_LongTermDebt" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebt" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebt" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebt" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebt" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebt" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" use="optional" order="5" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedBalanceSheets">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_AssetsCurrent" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="loc_us-gaap_InventoryNet" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ErcReceivables" xlink:label="loc_ALOT_ErcReceivables" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="loc_ALOT_ErcReceivables" use="optional" order="6" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet" use="optional" order="7" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet" use="optional" order="8" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_Goodwill" use="optional" order="9" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet" use="optional" order="10" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsMiscellaneousNoncurrent" xlink:label="loc_us-gaap_OtherAssetsMiscellaneousNoncurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_OtherAssetsMiscellaneousNoncurrent" use="optional" order="11" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset" use="optional" order="12" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedBalanceSheets">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaap_Liabilities" use="optional" order="13" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaap_LongTermDebtNoncurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities" xlink:to="loc_us-gaap_LongTermDebtNoncurrent" use="optional" order="14" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationNonCurrent" xlink:label="loc_ALOT_RoyaltyObligationNonCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities" xlink:to="loc_ALOT_RoyaltyObligationNonCurrent" use="optional" order="15" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" use="optional" order="16" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrentAndNoncurrent" xlink:label="loc_us-gaap_TaxesPayableCurrentAndNoncurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities" xlink:to="loc_us-gaap_TaxesPayableCurrentAndNoncurrent" use="optional" order="17" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" use="optional" order="18" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredRevenueNoncurrent" xlink:label="loc_us-gaap_DeferredRevenueNoncurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities" xlink:to="loc_us-gaap_DeferredRevenueNoncurrent" use="optional" order="19" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities" xlink:to="loc_us-gaap_LiabilitiesCurrent" use="optional" order="20" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="loc_us-gaap_AccountsPayableCurrent" use="optional" order="21" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" use="optional" order="22" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent" use="optional" order="23" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationCurrent" xlink:label="loc_ALOT_RoyaltyObligationCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="loc_ALOT_RoyaltyObligationCurrent" use="optional" order="24" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="loc_us-gaap_LinesOfCreditCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="loc_us-gaap_LinesOfCreditCurrent" use="optional" order="25" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" xlink:label="loc_ALOT_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="loc_ALOT_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" use="optional" order="26" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent" use="optional" order="27" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="loc_us-gaap_DeferredRevenueCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="loc_us-gaap_DeferredRevenueCurrent" use="optional" order="28" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent" xlink:label="loc_us-gaap_LongTermDebtCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="loc_us-gaap_LongTermDebtCurrent" use="optional" order="29" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaap_StockholdersEquity" use="optional" order="30" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="loc_us-gaap_PreferredStockValue" use="optional" order="31" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="loc_us-gaap_CommonStockValue" use="optional" order="32" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock" use="optional" order="33" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit" use="optional" order="34" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaap_TreasuryStockValue" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="loc_us-gaap_TreasuryStockValue" use="optional" order="35" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" use="optional" order="36" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes" xlink:label="loc_us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsResearch" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCreditsResearch" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCreditsResearch" use="optional" order="4" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCreditsForeign" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCreditsForeign" use="optional" order="5" weight="-1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments" use="optional" order="6" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:label="loc_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" use="optional" order="7" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" use="optional" order="8" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" use="optional" order="9" weight="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" use="optional" order="10" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_Incometaxreconciliationchangeinreserves" xlink:label="loc_ALOT_Incometaxreconciliationchangeinreserves" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_ALOT_Incometaxreconciliationchangeinreserves" use="optional" order="11" weight="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" xlink:label="loc_ALOT_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_ALOT_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" use="optional" order="12" weight="-1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" xlink:label="loc_ALOT_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_ALOT_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" use="optional" order="13" weight="-1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" xlink:label="loc_ALOT_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_ALOT_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" use="optional" order="14" weight="-1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncomeTaxReconciliationPppLoanForgiveness" xlink:label="loc_ALOT_IncomeTaxReconciliationPppLoanForgiveness" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="loc_ALOT_IncomeTaxReconciliationPppLoanForgiveness" use="optional" order="15" weight="1" />
</calculationLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>10
<FILENAME>alot-20230131_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by DFIN XBRL Instance Document - http://www.dfinsolutions.com/ - Version R3.0 - on 18-April-2023 [01:16:43] {AM}-->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:xbrldt="http://xbrl.org/2005/xbrldt">
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfChangesInShareholdersEquity" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail" roleURI="http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail" roleURI="http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail" roleURI="http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail" roleURI="http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail" roleURI="http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsAdditionalInformationDetail" roleURI="http://astro-med.com/role/AcquisitionsAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail" roleURI="http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail" roleURI="http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RevenueRecognitionAdditionalInformationDetail" roleURI="http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail" roleURI="http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IntangibleAssetsAdditionalInformationDetail" roleURI="http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail" roleURI="http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PropertyPlantAndEquipmentAdditionalInformationDetail" roleURI="http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail" roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail" roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CreditAgreementAndLongTermDebtAdditionalInformationDetail" roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PaycheckProtectionProgramLoanAdditionalInformationDetail" roleURI="http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail" roleURI="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail" roleURI="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#EmployeeRetentionCreditAdditionalInformationDetail" roleURI="http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RoyaltyObligationAdditionalInformationDetail" roleURI="http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesAdditionalInformationDetail" roleURI="http://astro-med.com/role/LeasesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesLeaseCostInformationDetail" roleURI="http://astro-med.com/role/LeasesLeaseCostInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesSupplementalCashFlowInformationDetail" roleURI="http://astro-med.com/role/LeasesSupplementalCashFlowInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail" roleURI="http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareholdersEquityAdditionalInformationDetail" roleURI="http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationAdditionalInformationDetail" roleURI="http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationSummaryOfOptionsOutstandingDetail" roleURI="http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail" roleURI="http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesAdditionalInformationDetail" roleURI="http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail" roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail" roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail" roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail" roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConcentrationOfRiskAdditionalInformationDetail" roleURI="http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail" roleURI="http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ScheduleIiValuationAndQualifyingAccountsAndReservesDetail" roleURI="http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CoverPage" roleURI="http://astro-med.com/role/CoverPage" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedBalanceSheetsParenthetical" roleURI="http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfComprehensiveIncome" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfChangesInShareholdersEquityParenthetical" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquityParenthetical" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfCashFlows" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfCashFlows" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#InventoriesAdditionalInformationDetail" roleURI="http://astro-med.com/role/InventoriesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#InventoriesComponentsOfInventoriesDetail" roleURI="http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccruedExpensesSummaryOfAccruedExpensesDetail" roleURI="http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail" roleURI="http://astro-med.com/role/IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail" roleURI="http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail" roleURI="http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail" roleURI="http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationShareBasedCompensationExpenseDetail" roleURI="http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail" roleURI="http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail" roleURI="http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail" roleURI="http://astro-med.com/role/IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxes" roleURI="http://astro-med.com/role/IncomeTaxes" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#NatureOfOperationsSegmentReportingAndGeographicalInformation" roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformation" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#NatureOfOperationsSegmentReportingAndGeographicalInformationTables" roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RevenueRecognition" roleURI="http://astro-med.com/role/RevenueRecognition" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RevenueRecognitionTables" roleURI="http://astro-med.com/role/RevenueRecognitionTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#Acquisitions" roleURI="http://astro-med.com/role/Acquisitions" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsTables" roleURI="http://astro-med.com/role/AcquisitionsTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IntangibleAssets" roleURI="http://astro-med.com/role/IntangibleAssets" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IntangibleAssetsTables" roleURI="http://astro-med.com/role/IntangibleAssetsTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#DerivativeFinancialInstrumentsAndRiskManagement" roleURI="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagement" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccumulatedOtherComprehensiveLoss" roleURI="http://astro-med.com/role/AccumulatedOtherComprehensiveLoss" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccumulatedOtherComprehensiveLossTables" roleURI="http://astro-med.com/role/AccumulatedOtherComprehensiveLossTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareholdersEquity" roleURI="http://astro-med.com/role/ShareholdersEquity" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensation" roleURI="http://astro-med.com/role/ShareBasedCompensation" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationTables" roleURI="http://astro-med.com/role/ShareBasedCompensationTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#EmployeeBenefitPlans" roleURI="http://astro-med.com/role/EmployeeBenefitPlans" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ProductWarrantyLiability" roleURI="http://astro-med.com/role/ProductWarrantyLiability" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ProductWarrantyLiabilityTables" roleURI="http://astro-med.com/role/ProductWarrantyLiabilityTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConcentrationOfRisk" roleURI="http://astro-med.com/role/ConcentrationOfRisk" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CommitmentsAndContingencies" roleURI="http://astro-med.com/role/CommitmentsAndContingencies" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#FairValueMeasurements" roleURI="http://astro-med.com/role/FairValueMeasurements" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ScheduleIiValuationAndQualifyingAccountsAndReserves" roleURI="http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReserves" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#SummaryOfSignificantAccountingPolicies" roleURI="http://astro-med.com/role/SummaryOfSignificantAccountingPolicies" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#SummaryOfSignificantAccountingPoliciesPolicies" roleURI="http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ProductWarrantyLiabilityActivityInProductWarrantyLiabilityDetail" roleURI="http://astro-med.com/role/ProductWarrantyLiabilityActivityInProductWarrantyLiabilityDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#Inventories" roleURI="http://astro-med.com/role/Inventories" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#InventoriesTables" roleURI="http://astro-med.com/role/InventoriesTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PropertyPlantAndEquipment" roleURI="http://astro-med.com/role/PropertyPlantAndEquipment" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PropertyPlantAndEquipmentTables" roleURI="http://astro-med.com/role/PropertyPlantAndEquipmentTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccruedExpenses" roleURI="http://astro-med.com/role/AccruedExpenses" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccruedExpensesTables" roleURI="http://astro-med.com/role/AccruedExpensesTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CreditAgreementAndLongTermDebt" roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebt" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CreditAgreementAndLongTermDebtTables" roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfIncome" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfIncome" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#EmployeeBenefitPlansAdditionalInformationDetail" roleURI="http://astro-med.com/role/EmployeeBenefitPlansAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#FairValueMeasurementsTables" roleURI="http://astro-med.com/role/FairValueMeasurementsTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesTables" roleURI="http://astro-med.com/role/IncomeTaxesTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedBalanceSheets" roleURI="http://astro-med.com/role/ConsolidatedBalanceSheets" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#Leases" roleURI="http://astro-med.com/role/Leases" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesTables" roleURI="http://astro-med.com/role/LeasesTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail" roleURI="http://astro-med.com/role/LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesMaturitiesOfLeaseLiabilitiesDetail" roleURI="http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#DerivativeFinancialInstrumentsAndRiskManagementTables" roleURI="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ProductWarrantyLiabilityAdditionalInformationDetail" roleURI="http://astro-med.com/role/ProductWarrantyLiabilityAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PaycheckProtectionProgramLoan" roleURI="http://astro-med.com/role/PaycheckProtectionProgramLoan" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#EmployeeRetentionCredit" roleURI="http://astro-med.com/role/EmployeeRetentionCredit" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RoyaltyObligation" roleURI="http://astro-med.com/role/RoyaltyObligation" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesParentheticalDetail" roleURI="http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesParentheticalDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CommitmentsAndContingenciesAdditionalInformationDetail" roleURI="http://astro-med.com/role/CommitmentsAndContingenciesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd#eedm" roleURI="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" />
<arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" />
<arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" />
<arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" />
<arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" />
<arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" />
<arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/notAll" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#notAll" />
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_114" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaap_SharesOutstanding_122" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_SharesOutstanding_122" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_132" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_132" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_131" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_NetIncomeLoss_131" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_121" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_StockholdersEquity_121" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsCommonStockCash" xlink:label="loc_us-gaap_DividendsCommonStockCash_130" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_DividendsCommonStockCash_130" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross_127" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross_127" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_123" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_123" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_115" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_StatementTable_115" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_113" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_115" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_113" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_112" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_113" xlink:to="loc_us-gaap_EquityComponentDomain_112" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_112_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_113" xlink:to="loc_us-gaap_EquityComponentDomain_112_default" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_116" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_112" xlink:to="loc_us-gaap_CommonStockMember_116" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_120" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_112" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_120" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_117" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_112" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_117" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_118" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_112" xlink:to="loc_us-gaap_RetainedEarningsMember_118" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember" xlink:label="loc_us-gaap_TreasuryStockMember_119" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_112" xlink:to="loc_us-gaap_TreasuryStockMember_119" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross_126" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross_126" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_124" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_124" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_125" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_125" use="optional" order="19" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SummaryOfSignificantAccountingPoliciesLineItems" xlink:label="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashEquivalentsMaturityPeriodDescription" xlink:label="loc_alot_CashEquivalentsMaturityPeriodDescription_208" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_alot_CashEquivalentsMaturityPeriodDescription_208" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProductsWarrantyPeriod" xlink:label="loc_alot_ProductsWarrantyPeriod_212" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_alot_ProductsWarrantyPeriod_212" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_215" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_215" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_217" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_217" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense" xlink:label="loc_us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense_653197" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense_653197" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashHeldInForeignBankAccounts" xlink:label="loc_alot_CashHeldInForeignBankAccounts_209" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_alot_CashHeldInForeignBankAccounts_209" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingExpense" xlink:label="loc_us-gaap_AdvertisingExpense_214" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_AdvertisingExpense_214" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_213" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_213" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_216" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_216" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLoans" xlink:label="loc_us-gaap_ProceedsFromLoans_880270" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_ProceedsFromLoans_880270" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_879350" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_879350" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SummaryOfSignificantAccountingPoliciesTable" xlink:label="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_879344" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_DebtInstrumentAxis_879344" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_879345" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_879344" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_879345" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_879345_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_879344" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_879345_default" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PromissoryNoteMember" xlink:label="loc_alot_PromissoryNoteMember_880277" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_879345" xlink:to="loc_alot_PromissoryNoteMember_880277" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_188" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_188" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_187" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_188" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_187" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_187_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_188" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_187_default" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_199" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_187" xlink:to="loc_us-gaap_SalesRevenueNetMember_199" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_193" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_193" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_193" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_193" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194_default" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ComputerEquipmentAndSoftwareMember" xlink:label="loc_alot_ComputerEquipmentAndSoftwareMember_205" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194" xlink:to="loc_alot_ComputerEquipmentAndSoftwareMember_205" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_204" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194" xlink:to="loc_us-gaap_MachineryAndEquipmentMember_204" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandImprovementsMember" xlink:label="loc_us-gaap_LandImprovementsMember_202" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194" xlink:to="loc_us-gaap_LandImprovementsMember_202" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BuildingAndLeaseholdImprovementsMember" xlink:label="loc_alot_BuildingAndLeaseholdImprovementsMember_203" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194" xlink:to="loc_alot_BuildingAndLeaseholdImprovementsMember_203" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_189" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_189" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_190" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_189" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_190" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_190_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_189" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_190_default" use="optional" order="30" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_200" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_190" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_200" use="optional" order="31" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_195" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_srt_RangeAxis_195" use="optional" order="32" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_196" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_195" xlink:to="loc_srt_RangeMember_196" use="optional" order="33" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_196_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_195" xlink:to="loc_srt_RangeMember_196_default" use="optional" order="34" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_207" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_196" xlink:to="loc_srt_MinimumMember_207" use="optional" order="35" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_206" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_196" xlink:to="loc_srt_MaximumMember_206" use="optional" order="36" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeAxis" xlink:label="loc_us-gaap_TradingActivityByTypeAxis_1396044" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_TradingActivityByTypeAxis_1396044" use="optional" order="37" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeDomain" xlink:label="loc_us-gaap_TradingActivityByTypeDomain_1396045" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TradingActivityByTypeAxis_1396044" xlink:to="loc_us-gaap_TradingActivityByTypeDomain_1396045" use="optional" order="38" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeDomain" xlink:label="loc_us-gaap_TradingActivityByTypeDomain_1396045_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TradingActivityByTypeAxis_1396044" xlink:to="loc_us-gaap_TradingActivityByTypeDomain_1396045_default" use="optional" order="39" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignExchangeMember" xlink:label="loc_us-gaap_ForeignExchangeMember_1396046" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TradingActivityByTypeDomain_1396045" xlink:to="loc_us-gaap_ForeignExchangeMember_1396046" use="optional" order="40" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_879347" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_CreditFacilityAxis_879347" use="optional" order="41" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_879348" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_879347" xlink:to="loc_us-gaap_CreditFacilityDomain_879348" use="optional" order="42" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_879348_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_879347" xlink:to="loc_us-gaap_CreditFacilityDomain_879348_default" use="optional" order="43" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PaycheckProtectionProgramLoanMember" xlink:label="loc_alot_PaycheckProtectionProgramLoanMember_879349" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_879348" xlink:to="loc_alot_PaycheckProtectionProgramLoanMember_879349" use="optional" order="44" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_191" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_srt_ProductOrServiceAxis_191" use="optional" order="45" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_192" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_191" xlink:to="loc_srt_ProductsAndServicesDomain_192" use="optional" order="46" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_192_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_191" xlink:to="loc_srt_ProductsAndServicesDomain_192_default" use="optional" order="47" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AirborneProductMember" xlink:label="loc_alot_AirborneProductMember_201" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_192" xlink:to="loc_alot_AirborneProductMember_201" use="optional" order="48" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="loc_us-gaap_LineOfCreditFacilityAxis_880274" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_LineOfCreditFacilityAxis_880274" use="optional" order="49" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain_880275" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis_880274" xlink:to="loc_us-gaap_LineOfCreditFacilityLenderDomain_880275" use="optional" order="50" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain_880275_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis_880274" xlink:to="loc_us-gaap_LineOfCreditFacilityLenderDomain_880275_default" use="optional" order="51" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_GreenwoodCreditUnionMember" xlink:label="loc_alot_GreenwoodCreditUnionMember_880276" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLenderDomain_880275" xlink:to="loc_alot_GreenwoodCreditUnionMember_880276" use="optional" order="52" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_653200" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_653200" use="optional" order="53" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_653201" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_653200" xlink:to="loc_us-gaap_TypeOfAdoptionMember_653201" use="optional" order="54" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_653201_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_653200" xlink:to="loc_us-gaap_TypeOfAdoptionMember_653201_default" use="optional" order="55" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentDecreaseForgiveness" xlink:label="loc_us-gaap_DebtInstrumentDecreaseForgiveness_1394573" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_DebtInstrumentDecreaseForgiveness_1394573" use="optional" order="56" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_1388486" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_1388486" use="optional" order="57" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PercentageOfServiceRevenueToTotalRevenue" xlink:label="loc_alot_PercentageOfServiceRevenueToTotalRevenue_1399990" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_alot_PercentageOfServiceRevenueToTotalRevenue_1399990" use="optional" order="58" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_210" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_210" use="optional" order="59" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_365" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_372" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_372" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_366" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_366" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_364" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_366" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_364" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_363" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_364" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_363" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_363_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_364" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_363_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_369" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_369" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_1399858" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_1399858" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_374" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_374" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_378" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_378" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_368" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_368" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" xlink:label="loc_alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill_1399859" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill_1399859" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_371" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_371" use="optional" order="12" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems_381" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_386" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems_381" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_386" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_383" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_386" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_383" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_382" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_383" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_382" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_382_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_383" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_382_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_384" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_386" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_384" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_385" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_384" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_385" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_385_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_384" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_385_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_1399862" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_385" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_1399862" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_1399863" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_385" xlink:to="loc_us-gaap_CustomerRelationshipsMember_1399863" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_388" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems_381" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_388" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_1399861" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems_381" xlink:to="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_1399861" use="optional" order="11" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail">
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessAcquisitionProFormaInformationLineItems" xlink:label="loc_alot_BusinessAcquisitionProFormaInformationLineItems_1399878" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessAcquisitionProFormaInformationTable" xlink:label="loc_alot_BusinessAcquisitionProFormaInformationTable_1399877" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_alot_BusinessAcquisitionProFormaInformationLineItems_1399878" xlink:to="loc_alot_BusinessAcquisitionProFormaInformationTable_1399877" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1399881" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_BusinessAcquisitionProFormaInformationTable_1399877" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1399881" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399882" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1399881" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399882" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399882_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1399881" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399882_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AgreementWithAstroMachineForAssetAcquisitionsMember" xlink:label="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember_1399883" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399882" xlink:to="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember_1399883" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessAcquisitionRevenue" xlink:label="loc_alot_BusinessAcquisitionRevenue_1399879" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_BusinessAcquisitionProFormaInformationLineItems_1399878" xlink:to="loc_alot_BusinessAcquisitionRevenue_1399879" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessAcquisitionEarningBeforeTaxes" xlink:label="loc_alot_BusinessAcquisitionEarningBeforeTaxes_1399946" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_BusinessAcquisitionProFormaInformationLineItems_1399878" xlink:to="loc_alot_BusinessAcquisitionEarningBeforeTaxes_1399946" use="optional" order="7" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1399965" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure_1399969" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1399965" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure_1399969" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_1399970" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1399965" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_1399970" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_1399964" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1399965" xlink:to="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_1399964" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399966" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_1399964" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399966" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399967" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399966" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399967" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399967_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399966" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399967_default" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_1399968" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399967" xlink:to="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_1399968" use="optional" order="7" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/AcquisitionsAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_1399887" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_1399894" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_1399894" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_1399895" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_1399895" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_1399896" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_1399895" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_1399896" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_1399896_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_1399895" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_1399896_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_1399897" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_1399896" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_1399897" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeAxis" xlink:label="loc_us-gaap_MeasurementInputTypeAxis_1399904" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_us-gaap_MeasurementInputTypeAxis_1399904" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeDomain" xlink:label="loc_us-gaap_MeasurementInputTypeDomain_1399905" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_MeasurementInputTypeAxis_1399904" xlink:to="loc_us-gaap_MeasurementInputTypeDomain_1399905" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeDomain" xlink:label="loc_us-gaap_MeasurementInputTypeDomain_1399905_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_MeasurementInputTypeAxis_1399904" xlink:to="loc_us-gaap_MeasurementInputTypeDomain_1399905_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MeasurementInputRoyaltyRateMember" xlink:label="loc_alot_MeasurementInputRoyaltyRateMember_1399906" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MeasurementInputTypeDomain_1399905" xlink:to="loc_alot_MeasurementInputRoyaltyRateMember_1399906" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MeasurementInputCustomerAttritionRateMember" xlink:label="loc_alot_MeasurementInputCustomerAttritionRateMember_1399911" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MeasurementInputTypeDomain_1399905" xlink:to="loc_alot_MeasurementInputCustomerAttritionRateMember_1399911" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputDiscountRateMember" xlink:label="loc_us-gaap_MeasurementInputDiscountRateMember_1399912" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MeasurementInputTypeDomain_1399905" xlink:to="loc_us-gaap_MeasurementInputDiscountRateMember_1399912" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_1399971" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_1399971" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_1399972" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_1399971" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_1399972" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_1399972_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_1399971" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_1399972_default" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_NonCurrentLiabilityMember" xlink:label="loc_alot_NonCurrentLiabilityMember_1399974" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_1399972" xlink:to="loc_alot_NonCurrentLiabilityMember_1399974" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399975" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399975" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399976" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399975" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399976" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399976_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399975" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399976_default" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1399888" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1399888" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399889" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1399888" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399889" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399889_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1399888" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399889_default" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AgreementWithAstroMachineForAssetAcquisitionsMember" xlink:label="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember_1399890" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399889" xlink:to="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember_1399890" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueAxis" xlink:label="loc_alot_RoyaltyPaymentsDueAxis_1399993" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_alot_RoyaltyPaymentsDueAxis_1399993" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueDomain" xlink:label="loc_alot_RoyaltyPaymentsDueDomain_1399994" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_alot_RoyaltyPaymentsDueAxis_1399993" xlink:to="loc_alot_RoyaltyPaymentsDueDomain_1399994" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueDomain" xlink:label="loc_alot_RoyaltyPaymentsDueDomain_1399994_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_alot_RoyaltyPaymentsDueAxis_1399993" xlink:to="loc_alot_RoyaltyPaymentsDueDomain_1399994_default" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueInNextTwelveMonthsMember" xlink:label="loc_alot_RoyaltyPaymentsDueInNextTwelveMonthsMember_1399995" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_RoyaltyPaymentsDueDomain_1399994" xlink:to="loc_alot_RoyaltyPaymentsDueInNextTwelveMonthsMember_1399995" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueYearTwoMember" xlink:label="loc_alot_RoyaltyPaymentsDueYearTwoMember_1399996" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_RoyaltyPaymentsDueDomain_1399994" xlink:to="loc_alot_RoyaltyPaymentsDueYearTwoMember_1399996" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueYearThreeMember" xlink:label="loc_alot_RoyaltyPaymentsDueYearThreeMember_1399997" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_RoyaltyPaymentsDueDomain_1399994" xlink:to="loc_alot_RoyaltyPaymentsDueYearThreeMember_1399997" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueYearFourMember" xlink:label="loc_alot_RoyaltyPaymentsDueYearFourMember_1399998" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_RoyaltyPaymentsDueDomain_1399994" xlink:to="loc_alot_RoyaltyPaymentsDueYearFourMember_1399998" use="optional" order="30" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueYearFiveMember" xlink:label="loc_alot_RoyaltyPaymentsDueYearFiveMember_1399999" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_RoyaltyPaymentsDueDomain_1399994" xlink:to="loc_alot_RoyaltyPaymentsDueYearFiveMember_1399999" use="optional" order="31" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_1399898" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_1399898" use="optional" order="32" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_1399899" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_1399899" use="optional" order="33" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PurchasePriceIntoAnEscrowAccount" xlink:label="loc_alot_PurchasePriceIntoAnEscrowAccount_1399900" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_alot_PurchasePriceIntoAnEscrowAccount_1399900" use="optional" order="34" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireLand" xlink:label="loc_us-gaap_PaymentsToAcquireLand_1399901" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_PaymentsToAcquireLand_1399901" use="optional" order="35" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AreaOfLand" xlink:label="loc_us-gaap_AreaOfLand_1399902" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_AreaOfLand_1399902" use="optional" order="36" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_NumberOfAcresOfLand" xlink:label="loc_alot_NumberOfAcresOfLand_1399903" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_alot_NumberOfAcresOfLand_1399903" use="optional" order="37" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RoyaltyExpense" xlink:label="loc_us-gaap_RoyaltyExpense_1399979" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_RoyaltyExpense_1399979" use="optional" order="38" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent" xlink:label="loc_alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent_1399982" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent_1399982" use="optional" order="39" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_FairValueOfIntangibleAssetsMeasurementInput" xlink:label="loc_alot_FairValueOfIntangibleAssetsMeasurementInput_1399909" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_alot_FairValueOfIntangibleAssetsMeasurementInput_1399909" use="optional" order="40" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_1399910" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_Goodwill_1399910" use="optional" order="41" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_1399891" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_1399891" use="optional" order="42" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RoyaltyGuaranteesCommitmentsAmount" xlink:label="loc_us-gaap_RoyaltyGuaranteesCommitmentsAmount_1400000" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_RoyaltyGuaranteesCommitmentsAmount_1400000" use="optional" order="43" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue" xlink:label="loc_alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue_1400001" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue_1400001" use="optional" order="44" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_223" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_224" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_223" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_224" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_226" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_224" xlink:to="loc_srt_StatementGeographicalAxis_226" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_225" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_226" xlink:to="loc_srt_SegmentGeographicalDomain_225" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_225_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_226" xlink:to="loc_srt_SegmentGeographicalDomain_225_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EuropeMember" xlink:label="loc_srt_EuropeMember_229" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_225" xlink:to="loc_srt_EuropeMember_229" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_OthersCountriesMember" xlink:label="loc_alot_OthersCountriesMember_233" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_225" xlink:to="loc_alot_OthersCountriesMember_233" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AsiaMember" xlink:label="loc_srt_AsiaMember_230" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_225" xlink:to="loc_srt_AsiaMember_230" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_CA" xlink:label="loc_country_CA_231" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_225" xlink:to="loc_country_CA_231" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CentralAndSouthAmericaMember" xlink:label="loc_alot_CentralAndSouthAmericaMember_232" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_225" xlink:to="loc_alot_CentralAndSouthAmericaMember_232" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="loc_country_US_228" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_225" xlink:to="loc_country_US_228" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_227" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_223" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_227" use="optional" order="11" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_236" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_240" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_236" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_240" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_237" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_236" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_237" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_238" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_237" xlink:to="loc_srt_ProductOrServiceAxis_238" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_239" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_238" xlink:to="loc_srt_ProductsAndServicesDomain_239" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_239_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_238" xlink:to="loc_srt_ProductsAndServicesDomain_239_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ServiceAndOtherMember" xlink:label="loc_alot_ServiceAndOtherMember_243" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_239" xlink:to="loc_alot_ServiceAndOtherMember_243" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_HardwareProductsMember" xlink:label="loc_alot_HardwareProductsMember_241" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_239" xlink:to="loc_alot_HardwareProductsMember_241" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SuppliesMember" xlink:label="loc_alot_SuppliesMember_242" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_239" xlink:to="loc_alot_SuppliesMember_242" use="optional" order="8" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1085764" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions" xlink:label="loc_alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions_883792" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions_883792" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1085761" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_us-gaap_StatementTable_1085761" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingEstimateByTypeAxis" xlink:label="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085766" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1085761" xlink:to="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085766" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingEstimateTypeDomain" xlink:label="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085767" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085766" xlink:to="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085767" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingEstimateTypeDomain" xlink:label="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085767_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085766" xlink:to="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085767_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember" xlink:label="loc_us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember_1085768" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085767" xlink:to="loc_us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember_1085768" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_1085762" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1085761" xlink:to="loc_us-gaap_StatementClassOfStockAxis_1085762" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_1085763" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_1085762" xlink:to="loc_us-gaap_ClassOfStockDomain_1085763" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_1085763_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_1085762" xlink:to="loc_us-gaap_ClassOfStockDomain_1085763_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_1399917" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1085761" xlink:to="loc_srt_MajorCustomersAxis_1399917" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_1399918" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_1399917" xlink:to="loc_srt_NameOfMajorCustomerDomain_1399918" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_1399918_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_1399917" xlink:to="loc_srt_NameOfMajorCustomerDomain_1399918_default" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AerospaceCustomerMember" xlink:label="loc_alot_AerospaceCustomerMember_1399919" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_1399918" xlink:to="loc_alot_AerospaceCustomerMember_1399919" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetNet" xlink:label="loc_us-gaap_ContractWithCustomerAssetNet_248" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_us-gaap_ContractWithCustomerAssetNet_248" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SettlementofContractClaimRevenueRecognized" xlink:label="loc_alot_SettlementofContractClaimRevenueRecognized_1399924" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_alot_SettlementofContractClaimRevenueRecognized_1399924" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostNetCurrent" xlink:label="loc_us-gaap_CapitalizedContractCostNetCurrent_252" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_us-gaap_CapitalizedContractCostNetCurrent_252" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining" xlink:label="loc_alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining_1086487" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining_1086487" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" xlink:label="loc_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod_1399983" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod_1399983" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_246" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_246" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CapitalizedContractCostNetLongTermAndShortTerm" xlink:label="loc_alot_CapitalizedContractCostNetLongTermAndShortTerm_1399916" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_alot_CapitalizedContractCostNetLongTermAndShortTerm_1399916" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="loc_us-gaap_CapitalizedContractCostNet_1099126" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_us-gaap_CapitalizedContractCostNet_1099126" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostAmortization" xlink:label="loc_us-gaap_CapitalizedContractCostAmortization_250" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_us-gaap_CapitalizedContractCostAmortization_250" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SettlementOfContractClaim" xlink:label="loc_alot_SettlementOfContractClaim_1399920" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_alot_SettlementOfContractClaim_1399920" use="optional" order="23" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_398" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_400" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_398" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_400" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_397" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_400" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_397" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_397" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_397" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerContractsMember" xlink:label="loc_us-gaap_CustomerContractsMember_410" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399" xlink:to="loc_us-gaap_CustomerContractsMember_410" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ExistingTechnologyMember" xlink:label="loc_alot_ExistingTechnologyMember_412" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399" xlink:to="loc_alot_ExistingTechnologyMember_412" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DistributorRelationsMember" xlink:label="loc_alot_DistributorRelationsMember_413" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399" xlink:to="loc_alot_DistributorRelationsMember_413" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember" xlink:label="loc_us-gaap_TrademarksMember_1399927" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399" xlink:to="loc_us-gaap_TrademarksMember_1399927" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaap_TypeOfArrangementAxis_401" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_400" xlink:to="loc_us-gaap_TypeOfArrangementAxis_401" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_394" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TypeOfArrangementAxis_401" xlink:to="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_394" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_394_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TypeOfArrangementAxis_401" xlink:to="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_394_default" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_HoneywellAssetPurchaseAndLicenseAgreementMember" xlink:label="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember_402" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_394" xlink:to="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember_402" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_396" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_400" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_396" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_396" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_396" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395_default" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TrojanlabelApSMember" xlink:label="loc_alot_TrojanlabelApSMember_405" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395" xlink:to="loc_alot_TrojanlabelApSMember_405" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MiltopeCorporationMember" xlink:label="loc_alot_MiltopeCorporationMember_403" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395" xlink:to="loc_alot_MiltopeCorporationMember_403" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RuggedInformationTechnologyEquipmentCorporationMember" xlink:label="loc_alot_RuggedInformationTechnologyEquipmentCorporationMember_404" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395" xlink:to="loc_alot_RuggedInformationTechnologyEquipmentCorporationMember_404" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AgreementWithAstroMachineForAssetAcquisitionsMember" xlink:label="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember_1399929" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395" xlink:to="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember_1399929" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_409" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_398" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_409" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" xlink:label="loc_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment_408" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_398" xlink:to="loc_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment_408" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_406" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_398" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_406" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_407" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_398" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_407" use="optional" order="23" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IntangibleAssetsLineItems" xlink:label="loc_alot_IntangibleAssetsLineItems_1085789" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsFinitelived" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsFinitelived_424" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_IntangibleAssetsLineItems_1085789" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsFinitelived_424" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_1086489" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_IntangibleAssetsLineItems_1085789" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_1086489" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IntangibleAssetsTable" xlink:label="loc_alot_IntangibleAssetsTable_1085788" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_alot_IntangibleAssetsLineItems_1085789" xlink:to="loc_alot_IntangibleAssetsTable_1085788" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaap_TypeOfArrangementAxis_1085796" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_IntangibleAssetsTable_1085788" xlink:to="loc_us-gaap_TypeOfArrangementAxis_1085796" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_1085797" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TypeOfArrangementAxis_1085796" xlink:to="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_1085797" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_1085797_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TypeOfArrangementAxis_1085796" xlink:to="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_1085797_default" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_HoneywellAssetPurchaseAndLicenseAgreementMember" xlink:label="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember_1085800" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_1085797" xlink:to="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember_1085800" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1085802" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_IntangibleAssetsTable_1085788" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1085802" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1085803" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1085802" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1085803" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1085803_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1085802" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1085803_default" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RuggedInformationTechnologyEquipmentCorporationMember" xlink:label="loc_alot_RuggedInformationTechnologyEquipmentCorporationMember_1085804" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1085803" xlink:to="loc_alot_RuggedInformationTechnologyEquipmentCorporationMember_1085804" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1085790" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_IntangibleAssetsTable_1085788" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1085790" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1085791" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1085790" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1085791" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1085791_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1085790" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1085791_default" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerContractsMember" xlink:label="loc_us-gaap_CustomerContractsMember_1085792" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1085791" xlink:to="loc_us-gaap_CustomerContractsMember_1085792" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingEstimateByTypeAxis" xlink:label="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085793" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_IntangibleAssetsTable_1085788" xlink:to="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085793" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingEstimateTypeDomain" xlink:label="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085794" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085793" xlink:to="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085794" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingEstimateTypeDomain" xlink:label="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085794_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085793" xlink:to="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085794_default" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsAmortizationPeriodMember" xlink:label="loc_us-gaap_IntangibleAssetsAmortizationPeriodMember_1085795" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085794" xlink:to="loc_us-gaap_IntangibleAssetsAmortizationPeriodMember_1085795" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_425" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_IntangibleAssetsLineItems_1085789" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_425" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod" xlink:label="loc_alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod_1085820" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_IntangibleAssetsLineItems_1085789" xlink:to="loc_alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod_1085820" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization" xlink:label="loc_alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization_1086493" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_IntangibleAssetsLineItems_1085789" xlink:to="loc_alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization_1086493" use="optional" order="22" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1216530" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_477" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_477" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross_476" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareGross_476" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_479" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_479" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="loc_us-gaap_MachineryAndEquipmentGross_475" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_MachineryAndEquipmentGross_475" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1215642" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_StatementTable_1215642" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1215647" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1215642" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1215647" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1215648" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1215647" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1215648" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1215648_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1215647" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1215648_default" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandAndLandImprovements" xlink:label="loc_us-gaap_LandAndLandImprovements_473" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_LandAndLandImprovements_473" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_478" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_478" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross_474" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_BuildingsAndImprovementsGross_474" use="optional" order="11" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1215656" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_482" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1215656" xlink:to="loc_us-gaap_Depreciation_482" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1215653" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1215656" xlink:to="loc_us-gaap_StatementTable_1215653" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_1215654" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1215653" xlink:to="loc_us-gaap_StatementClassOfStockAxis_1215654" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_1215655" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_1215654" xlink:to="loc_us-gaap_ClassOfStockDomain_1215655" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_1215655_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_1215654" xlink:to="loc_us-gaap_ClassOfStockDomain_1215655_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_1215657" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1215653" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_1215657" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_1215658" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_1215657" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_1215658" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_1215658_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_1215657" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_1215658_default" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpenseMember" xlink:label="loc_us-gaap_NonoperatingIncomeExpenseMember_1215659" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_1215658" xlink:to="loc_us-gaap_NonoperatingIncomeExpenseMember_1215659" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedComputerSoftwareImpairments1" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareImpairments1_1215660" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1215656" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareImpairments1_1215660" use="optional" order="10" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="loc_us-gaap_DebtInstrumentLineItems_524" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable" xlink:label="loc_us-gaap_DebtInstrumentTable_525" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_524" xlink:to="loc_us-gaap_DebtInstrumentTable_525" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_522" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_525" xlink:to="loc_us-gaap_CreditFacilityAxis_522" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_523" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_522" xlink:to="loc_us-gaap_CreditFacilityDomain_523" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_523_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_522" xlink:to="loc_us-gaap_CreditFacilityDomain_523_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember" xlink:label="loc_alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember_1399860" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_523" xlink:to="loc_alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember_1399860" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember" xlink:label="loc_alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember_879265" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_523" xlink:to="loc_alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember_879265" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent" xlink:label="loc_us-gaap_LongTermDebtCurrent_530" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_524" xlink:to="loc_us-gaap_LongTermDebtCurrent_530" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_528" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_524" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_528" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_531" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_524" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_531" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="loc_us-gaap_DeferredFinanceCostsNet_529" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_524" xlink:to="loc_us-gaap_DeferredFinanceCostsNet_529" use="optional" order="10" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="loc_us-gaap_DebtInstrumentLineItems_547" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_552" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_552" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_553" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_553" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaap_LongTermDebt_653628" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_LongTermDebt_653628" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_550" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_550" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_554" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_554" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable" xlink:label="loc_us-gaap_DebtInstrumentTable_548" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_DebtInstrumentTable_548" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_545" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_548" xlink:to="loc_us-gaap_CreditFacilityAxis_545" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_546" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_545" xlink:to="loc_us-gaap_CreditFacilityDomain_546" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_546_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_545" xlink:to="loc_us-gaap_CreditFacilityDomain_546_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TermLoanMember" xlink:label="loc_alot_TermLoanMember_549" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_546" xlink:to="loc_alot_TermLoanMember_549" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_551" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_551" use="optional" order="11" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="loc_us-gaap_DebtInstrumentLineItems_561" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable" xlink:label="loc_us-gaap_DebtInstrumentTable_563" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_DebtInstrumentTable_563" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_560" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_DebtInstrumentAxis_560" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_562" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_560" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_562" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_562_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_560" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_562_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_566" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_srt_RangeAxis_566" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_567" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_566" xlink:to="loc_srt_RangeMember_567" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_567_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_566" xlink:to="loc_srt_RangeMember_567_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_577" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_567" xlink:to="loc_srt_MinimumMember_577" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_578" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_567" xlink:to="loc_srt_MaximumMember_578" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis" xlink:label="loc_us-gaap_VariableRateAxis_568" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_VariableRateAxis_568" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain" xlink:label="loc_us-gaap_VariableRateDomain_569" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_VariableRateAxis_568" xlink:to="loc_us-gaap_VariableRateDomain_569" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain" xlink:label="loc_us-gaap_VariableRateDomain_569_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_VariableRateAxis_568" xlink:to="loc_us-gaap_VariableRateDomain_569_default" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FederalFundsEffectiveSwapRateMember" xlink:label="loc_us-gaap_FederalFundsEffectiveSwapRateMember_653703" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_569" xlink:to="loc_us-gaap_FederalFundsEffectiveSwapRateMember_653703" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_579" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_569" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_579" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_558" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_CreditFacilityAxis_558" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_559" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_558" xlink:to="loc_us-gaap_CreditFacilityDomain_559" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_559_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_558" xlink:to="loc_us-gaap_CreditFacilityDomain_559_default" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TermLoanMember" xlink:label="loc_alot_TermLoanMember_570" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_559" xlink:to="loc_alot_TermLoanMember_570" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_571" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_559" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_571" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="loc_us-gaap_LineOfCreditFacilityAxis_564" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_LineOfCreditFacilityAxis_564" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain_565" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis_564" xlink:to="loc_us-gaap_LineOfCreditFacilityLenderDomain_565" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain_565_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis_564" xlink:to="loc_us-gaap_LineOfCreditFacilityLenderDomain_565_default" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BankOfAmericaMember" xlink:label="loc_alot_BankOfAmericaMember_576" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLenderDomain_565" xlink:to="loc_alot_BankOfAmericaMember_576" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_879328" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_879328" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_879329" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_879328" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_879329" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_879329_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_879328" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_879329_default" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherExpenseMember" xlink:label="loc_us-gaap_OtherExpenseMember_879330" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_879329" xlink:to="loc_us-gaap_OtherExpenseMember_879330" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOneAxis" xlink:label="loc_alot_DetailsOneAxis_1399868" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_alot_DetailsOneAxis_1399868" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOneDomain" xlink:label="loc_alot_DetailsOneDomain_1399869" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_alot_DetailsOneAxis_1399868" xlink:to="loc_alot_DetailsOneDomain_1399869" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOneDomain" xlink:label="loc_alot_DetailsOneDomain_1399869_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_alot_DetailsOneAxis_1399868" xlink:to="loc_alot_DetailsOneDomain_1399869_default" use="optional" order="30" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AdditionalTermLoanAvailedMember" xlink:label="loc_alot_AdditionalTermLoanAvailedMember_1399870" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_DetailsOneDomain_1399869" xlink:to="loc_alot_AdditionalTermLoanAvailedMember_1399870" use="optional" order="31" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsAxis" xlink:label="loc_alot_DetailsAxis_1399864" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_alot_DetailsAxis_1399864" use="optional" order="32" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsDomain" xlink:label="loc_alot_DetailsDomain_1399865" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_alot_DetailsAxis_1399864" xlink:to="loc_alot_DetailsDomain_1399865" use="optional" order="33" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsDomain" xlink:label="loc_alot_DetailsDomain_1399865_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_alot_DetailsAxis_1399864" xlink:to="loc_alot_DetailsDomain_1399865_default" use="optional" order="34" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BeforeAmendmentToTheCreditAgreementMember" xlink:label="loc_alot_BeforeAmendmentToTheCreditAgreementMember_1399867" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_DetailsDomain_1399865" xlink:to="loc_alot_BeforeAmendmentToTheCreditAgreementMember_1399867" use="optional" order="35" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CreditAgreementAxis" xlink:label="loc_alot_CreditAgreementAxis_1399871" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_alot_CreditAgreementAxis_1399871" use="optional" order="36" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CreditAgreementDomain" xlink:label="loc_alot_CreditAgreementDomain_1399872" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_alot_CreditAgreementAxis_1399871" xlink:to="loc_alot_CreditAgreementDomain_1399872" use="optional" order="37" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CreditAgreementDomain" xlink:label="loc_alot_CreditAgreementDomain_1399872_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_alot_CreditAgreementAxis_1399871" xlink:to="loc_alot_CreditAgreementDomain_1399872_default" use="optional" order="38" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SecondAmendmentCreditAgreementMember" xlink:label="loc_alot_SecondAmendmentCreditAgreementMember_1399873" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_CreditAgreementDomain_1399872" xlink:to="loc_alot_SecondAmendmentCreditAgreementMember_1399873" use="optional" order="39" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis" xlink:label="loc_srt_StatementScenarioAxis_879331" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_srt_StatementScenarioAxis_879331" use="optional" order="40" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srt_ScenarioUnspecifiedDomain_879332" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementScenarioAxis_879331" xlink:to="loc_srt_ScenarioUnspecifiedDomain_879332" use="optional" order="41" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srt_ScenarioUnspecifiedDomain_879332_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementScenarioAxis_879331" xlink:to="loc_srt_ScenarioUnspecifiedDomain_879332_default" use="optional" order="42" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_653761" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_653761" use="optional" order="43" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_653762" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_653761" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_653762" use="optional" order="44" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_653762_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_653761" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_653762_default" use="optional" order="45" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCredit" xlink:label="loc_us-gaap_LineOfCredit_573" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_LineOfCredit_573" use="optional" order="46" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpenseDebt" xlink:label="loc_us-gaap_InterestExpenseDebt_653693" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_InterestExpenseDebt_653693" use="optional" order="47" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_879288" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_879288" use="optional" order="48" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate" xlink:label="loc_us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate_879318" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate_879318" use="optional" order="49" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_879299" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_879299" use="optional" order="50" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_653681" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_653681" use="optional" order="51" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_572" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_572" use="optional" order="52" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_879314" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_879314" use="optional" order="53" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCommitmentFeeAmount" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeeAmount_879310" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_LineOfCreditFacilityCommitmentFeeAmount_879310" use="optional" order="54" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DebtInstrumentAdditionalBasisSpread" xlink:label="loc_alot_DebtInstrumentAdditionalBasisSpread_879317" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_alot_DebtInstrumentAdditionalBasisSpread_879317" use="optional" order="55" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLongTermLinesOfCredit" xlink:label="loc_us-gaap_ProceedsFromLongTermLinesOfCredit_1399913" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_ProceedsFromLongTermLinesOfCredit_1399913" use="optional" order="56" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtWeightedAverageInterestRateOverTime" xlink:label="loc_us-gaap_LongTermDebtWeightedAverageInterestRateOverTime_1399914" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_LongTermDebtWeightedAverageInterestRateOverTime_1399914" use="optional" order="57" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:label="loc_us-gaap_DebtInstrumentPeriodicPaymentPrincipal_879323" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_DebtInstrumentPeriodicPaymentPrincipal_879323" use="optional" order="58" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_879234" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_879223" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_StatementTable_879223" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_879227" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_879223" xlink:to="loc_us-gaap_DebtInstrumentAxis_879227" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_879228" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_879227" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_879228" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_879228_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_879227" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_879228_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_GreenwoodCreditUnionMember" xlink:label="loc_alot_GreenwoodCreditUnionMember_879229" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_879228" xlink:to="loc_alot_GreenwoodCreditUnionMember_879229" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_879230" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_879223" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_879230" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_879231" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_879230" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_879231" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_879231_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_879230" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_879231_default" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_879224" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_879223" xlink:to="loc_us-gaap_CreditFacilityAxis_879224" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_879225" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_879224" xlink:to="loc_us-gaap_CreditFacilityDomain_879225" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_879225_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_879224" xlink:to="loc_us-gaap_CreditFacilityDomain_879225_default" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PaycheckProtectionProgramLoanMember" xlink:label="loc_alot_PaycheckProtectionProgramLoanMember_879226" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_879225" xlink:to="loc_alot_PaycheckProtectionProgramLoanMember_879226" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentDecreaseForgiveness" xlink:label="loc_us-gaap_DebtInstrumentDecreaseForgiveness_1085850" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_DebtInstrumentDecreaseForgiveness_1085850" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPaymentTerms" xlink:label="loc_us-gaap_DebtInstrumentPaymentTerms_879236" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_DebtInstrumentPaymentTerms_879236" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="loc_us-gaap_DebtInstrumentMaturityDate_879237" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_DebtInstrumentMaturityDate_879237" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_879235" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_879235" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_879238" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_879238" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_1085854" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_1085854" use="optional" order="18" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_584" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_879202" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_584" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_879202" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax_879203" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_584" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax_879203" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashPaidTerminationOfSwaps" xlink:label="loc_alot_CashPaidTerminationOfSwaps_879209" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_584" xlink:to="loc_alot_CashPaidTerminationOfSwaps_879209" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_585" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_584" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_585" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_583" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_585" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_583" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_582" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_583" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_582" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_582_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_583" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_582_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CrossCurrencyInterestRateContractMember" xlink:label="loc_us-gaap_CrossCurrencyInterestRateContractMember_586" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_582" xlink:to="loc_us-gaap_CrossCurrencyInterestRateContractMember_586" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_879205" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_585" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_879205" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_879206" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_879205" xlink:to="loc_us-gaap_HedgingRelationshipDomain_879206" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_879206_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_879205" xlink:to="loc_us-gaap_HedgingRelationshipDomain_879206_default" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashFlowHedgingMember" xlink:label="loc_us-gaap_CashFlowHedgingMember_879207" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingRelationshipDomain_879206" xlink:to="loc_us-gaap_CashFlowHedgingMember_879207" use="optional" order="12" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_597" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_608" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_597" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_608" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_610" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_597" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_610" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_598" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_597" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_598" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_593" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_598" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_593" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_594" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_593" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_594" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_594_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_593" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_594_default" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_599" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_598" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_599" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_600" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_599" xlink:to="loc_us-gaap_HedgingRelationshipDomain_600" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_600_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_599" xlink:to="loc_us-gaap_HedgingRelationshipDomain_600_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashFlowHedgeMember" xlink:label="loc_alot_CashFlowHedgeMember_611" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingRelationshipDomain_600" xlink:to="loc_alot_CashFlowHedgeMember_611" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_596" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_598" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_596" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_595" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_596" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_595" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_595_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_596" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_595_default" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CrossCurrencyInterestRateContractMember" xlink:label="loc_us-gaap_CrossCurrencyInterestRateContractMember_603" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_595" xlink:to="loc_us-gaap_CrossCurrencyInterestRateContractMember_603" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI" xlink:label="loc_us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI_609" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_597" xlink:to="loc_us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI_609" use="optional" order="15" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditDisclosureLineItems" xlink:label="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter" xlink:label="loc_alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter_1086419" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter_1086419" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCredit" xlink:label="loc_alot_EmployeeRetentionCredit_1086434" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCredit_1086434" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter" xlink:label="loc_alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter_1086420" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter_1086420" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit" xlink:label="loc_alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit_1086424" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit_1086424" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceivableSellingAndMarketing" xlink:label="loc_alot_EmployeeRetentionCreditReceivableSellingAndMarketing_1096030" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCreditReceivableSellingAndMarketing_1096030" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses" xlink:label="loc_alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses_1096033" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses_1096033" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceivableResearchAndDevelopment" xlink:label="loc_alot_EmployeeRetentionCreditReceivableResearchAndDevelopment_1096093" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCreditReceivableResearchAndDevelopment_1096093" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ErcReceivables" xlink:label="loc_alot_ErcReceivables_1395196" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_ErcReceivables_1395196" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditDisclosureTable" xlink:label="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_1086429" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_1086429" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_1086430" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_1086429" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_1086430" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_1086430_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_1086429" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_1086430_default" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:label="loc_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_1086431" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_1086430" xlink:to="loc_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_1086431" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_1395721" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_1395721" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_1395722" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_1395721" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_1395722" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_1395722_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_1395721" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_1395722_default" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_1086436" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_1086436" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_1086437" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_1086436" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_1086437" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_1086437_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_1086436" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_1086437_default" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember_1086439" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_1086437" xlink:to="loc_us-gaap_SellingAndMarketingExpenseMember_1086439" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_1086440" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_1086437" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_1086440" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_1086441" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_1086437" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_1086441" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_1086438" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_1086437" xlink:to="loc_us-gaap_CostOfSalesMember_1086438" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnusualOrInfrequentItemAxis" xlink:label="loc_us-gaap_UnusualOrInfrequentItemAxis_1086421" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" xlink:to="loc_us-gaap_UnusualOrInfrequentItemAxis_1086421" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnusualOrInfrequentItemDomain" xlink:label="loc_us-gaap_UnusualOrInfrequentItemDomain_1086422" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_UnusualOrInfrequentItemAxis_1086421" xlink:to="loc_us-gaap_UnusualOrInfrequentItemDomain_1086422" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnusualOrInfrequentItemDomain" xlink:label="loc_us-gaap_UnusualOrInfrequentItemDomain_1086422_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_UnusualOrInfrequentItemAxis_1086421" xlink:to="loc_us-gaap_UnusualOrInfrequentItemDomain_1086422_default" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CaresActMember" xlink:label="loc_alot_CaresActMember_1086423" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_UnusualOrInfrequentItemDomain_1086422" xlink:to="loc_alot_CaresActMember_1086423" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceivables" xlink:label="loc_alot_EmployeeRetentionCreditReceivables_1096017" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCreditReceivables_1096017" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceived" xlink:label="loc_alot_EmployeeRetentionCreditReceived_1399941" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCreditReceived_1399941" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages" xlink:label="loc_alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages_1086418" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages_1086418" use="optional" order="30" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_439514" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" xlink:label="loc_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue_439552" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue_439552" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationCurrent" xlink:label="loc_alot_RoyaltyObligationCurrent_439546" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_RoyaltyObligationCurrent_439546" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_439511" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_us-gaap_StatementTable_439511" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PeriodAxis" xlink:label="loc_alot_PeriodAxis_1399850" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_439511" xlink:to="loc_alot_PeriodAxis_1399850" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PeriodDomain" xlink:label="loc_alot_PeriodDomain_1399851" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_alot_PeriodAxis_1399850" xlink:to="loc_alot_PeriodDomain_1399851" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PeriodDomain" xlink:label="loc_alot_PeriodDomain_1399851_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_alot_PeriodAxis_1399850" xlink:to="loc_alot_PeriodDomain_1399851_default" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaap_TypeOfArrangementAxis_439535" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_439511" xlink:to="loc_us-gaap_TypeOfArrangementAxis_439535" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_439536" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TypeOfArrangementAxis_439535" xlink:to="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_439536" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_439536_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TypeOfArrangementAxis_439535" xlink:to="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_439536_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_HoneywellAssetPurchaseAndLicenseAgreementMember" xlink:label="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember_439537" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_439536" xlink:to="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember_439537" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_439512" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_439511" xlink:to="loc_us-gaap_StatementClassOfStockAxis_439512" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_439513" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_439512" xlink:to="loc_us-gaap_ClassOfStockDomain_439513" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_439513_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_439512" xlink:to="loc_us-gaap_ClassOfStockDomain_439513_default" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationNonCurrent" xlink:label="loc_alot_RoyaltyObligationNonCurrent_439547" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_RoyaltyObligationNonCurrent_439547" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ExcessRoyaltyPayments" xlink:label="loc_alot_ExcessRoyaltyPayments_439548" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_ExcessRoyaltyPayments_439548" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PaymentTermPeriod" xlink:label="loc_alot_PaymentTermPeriod_439530" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_PaymentTermPeriod_439530" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MinimumRoyaltyPaymentObligation" xlink:label="loc_alot_MinimumRoyaltyPaymentObligation_1221222" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_MinimumRoyaltyPaymentObligation_1221222" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_GuaranteedMinimumRoyaltyPayments" xlink:label="loc_alot_GuaranteedMinimumRoyaltyPayments_439545" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_GuaranteedMinimumRoyaltyPayments_439545" use="optional" order="18" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/LeasesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_439473" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_442756" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_439473" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_442756" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_442755" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_439473" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_442755" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_439470" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_439473" xlink:to="loc_us-gaap_StatementTable_439470" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_475126" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_439470" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_475126" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_475127" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_475126" xlink:to="loc_us-gaap_TypeOfAdoptionMember_475127" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_475127_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_475126" xlink:to="loc_us-gaap_TypeOfAdoptionMember_475127_default" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_482358" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_439470" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_482358" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_482359" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_482358" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_482359" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_482359_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_482358" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_482359_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis" xlink:label="loc_srt_StatementScenarioAxis_439471" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_439470" xlink:to="loc_srt_StatementScenarioAxis_439471" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srt_ScenarioUnspecifiedDomain_439472" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementScenarioAxis_439471" xlink:to="loc_srt_ScenarioUnspecifiedDomain_439472" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srt_ScenarioUnspecifiedDomain_439472_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementScenarioAxis_439471" xlink:to="loc_srt_ScenarioUnspecifiedDomain_439472_default" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_439480" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_439470" xlink:to="loc_srt_RangeAxis_439480" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_439481" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_439480" xlink:to="loc_srt_RangeMember_439481" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_439481_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_439480" xlink:to="loc_srt_RangeMember_439481_default" use="optional" order="15" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/LeasesLeaseCostInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_442763" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_442760" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_442763" xlink:to="loc_us-gaap_StatementTable_442760" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_442761" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_442760" xlink:to="loc_us-gaap_StatementClassOfStockAxis_442761" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_442762" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_442761" xlink:to="loc_us-gaap_ClassOfStockDomain_442762" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_442762_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_442761" xlink:to="loc_us-gaap_ClassOfStockDomain_442762_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_442765" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_442760" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_442765" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_442766" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_442765" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_442766" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_442766_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_442765" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_442766_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_442768" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_442766" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_442768" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseExpense" xlink:label="loc_us-gaap_OperatingLeaseExpense_442764" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_442763" xlink:to="loc_us-gaap_OperatingLeaseExpense_442764" use="optional" order="9" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/LeasesSupplementalCashFlowInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_442775" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract" xlink:label="loc_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract_442777" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_442775" xlink:to="loc_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract_442777" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments" xlink:label="loc_us-gaap_OperatingLeasePayments_442776" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract_442777" xlink:to="loc_us-gaap_OperatingLeasePayments_442776" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_442772" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_442775" xlink:to="loc_us-gaap_StatementTable_442772" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="3" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCapitalizationEquityLineItems" xlink:label="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" xlink:label="loc_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss_879454" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" xlink:to="loc_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss_879454" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_622" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" xlink:to="loc_us-gaap_StockholdersEquity_622" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCapitalizationEquityTable" xlink:label="loc_us-gaap_ScheduleOfCapitalizationEquityTable_616" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" xlink:to="loc_us-gaap_ScheduleOfCapitalizationEquityTable_616" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_617" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityTable_616" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_617" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_614" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_617" xlink:to="loc_us-gaap_EquityComponentDomain_614" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_614_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_617" xlink:to="loc_us-gaap_EquityComponentDomain_614_default" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember_618" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_614" xlink:to="loc_us-gaap_AccumulatedTranslationAdjustmentMember_618" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_620" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_614" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_620" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:label="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_987739" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_614" xlink:to="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_987739" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_623" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_623" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:label="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax_624" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" xlink:to="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax_624" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_625" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_625" use="optional" order="12" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockLineItems" xlink:label="loc_us-gaap_ClassOfStockLineItems_629" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" xlink:label="loc_alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount_634" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_629" xlink:to="loc_alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount_634" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_StockDeliveredDuringPeriodSharesStockOptionsExercise" xlink:label="loc_alot_StockDeliveredDuringPeriodSharesStockOptionsExercise_633" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_629" xlink:to="loc_alot_StockDeliveredDuringPeriodSharesStockOptionsExercise_633" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfStockByClassTable" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_630" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ClassOfStockLineItems_629" xlink:to="loc_us-gaap_ScheduleOfStockByClassTable_630" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareRepurchaseProgramAxis" xlink:label="loc_us-gaap_ShareRepurchaseProgramAxis_631" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_630" xlink:to="loc_us-gaap_ShareRepurchaseProgramAxis_631" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareRepurchaseProgramDomain" xlink:label="loc_us-gaap_ShareRepurchaseProgramDomain_632" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ShareRepurchaseProgramAxis_631" xlink:to="loc_us-gaap_ShareRepurchaseProgramDomain_632" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareRepurchaseProgramDomain" xlink:label="loc_us-gaap_ShareRepurchaseProgramDomain_632_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ShareRepurchaseProgramAxis_631" xlink:to="loc_us-gaap_ShareRepurchaseProgramDomain_632_default" use="optional" order="6" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_672" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_672" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_671" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_671" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ReservationOfSharesUnderEmployeeStockPurchasePlan" xlink:label="loc_alot_ReservationOfSharesUnderEmployeeStockPurchasePlan_679" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_alot_ReservationOfSharesUnderEmployeeStockPurchasePlan_679" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_677" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_677" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_676" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_676" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_674" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_674" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_658" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_658" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockExpense" xlink:label="loc_us-gaap_RestrictedStockExpense_439431" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_RestrictedStockExpense_439431" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_439421" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_439421" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_439420" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_439420" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate_678" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate_678" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_659" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_659" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_651" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" xlink:to="loc_srt_TitleOfIndividualAxis_651" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_652" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_TitleOfIndividualAxis_651" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_652" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_652_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_TitleOfIndividualAxis_651" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_652_default" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_643" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" xlink:to="loc_us-gaap_AwardTypeAxis_643" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_643" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_643" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650_default" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_680" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" xlink:to="loc_us-gaap_EmployeeStockOptionMember_680" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PerformanceSharesMember" xlink:label="loc_us-gaap_PerformanceSharesMember_685" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" xlink:to="loc_us-gaap_PerformanceSharesMember_685" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember" xlink:label="loc_us-gaap_RestrictedStockMember_682" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" xlink:to="loc_us-gaap_RestrictedStockMember_682" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_681" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_681" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RestrictedStockAwardMember" xlink:label="loc_alot_RestrictedStockAwardMember_439434" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" xlink:to="loc_alot_RestrictedStockAwardMember_439434" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaap_PlanNameAxis_644" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" xlink:to="loc_us-gaap_PlanNameAxis_644" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaap_PlanNameDomain_645" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_644" xlink:to="loc_us-gaap_PlanNameDomain_645" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaap_PlanNameDomain_645_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_644" xlink:to="loc_us-gaap_PlanNameDomain_645_default" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeStockPurchasePlanMember" xlink:label="loc_alot_EmployeeStockPurchasePlanMember_654" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_645" xlink:to="loc_alot_EmployeeStockPurchasePlanMember_654" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TwoThousandEighteenEquityIncentivePlanMember" xlink:label="loc_alot_TwoThousandEighteenEquityIncentivePlanMember_656" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_645" xlink:to="loc_alot_TwoThousandEighteenEquityIncentivePlanMember_656" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TwoThousandFifteenEquityIncentivePlanMember" xlink:label="loc_alot_TwoThousandFifteenEquityIncentivePlanMember_653" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_645" xlink:to="loc_alot_TwoThousandFifteenEquityIncentivePlanMember_653" use="optional" order="30" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TwoThousandSevenEquityIncentivePlanMember" xlink:label="loc_alot_TwoThousandSevenEquityIncentivePlanMember_655" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_645" xlink:to="loc_alot_TwoThousandSevenEquityIncentivePlanMember_655" use="optional" order="31" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember" xlink:label="loc_alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember_1399892" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_645" xlink:to="loc_alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember_1399892" use="optional" order="32" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PriorEmployeeStockPurchasePlanMember" xlink:label="loc_alot_PriorEmployeeStockPurchasePlanMember_1399893" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_645" xlink:to="loc_alot_PriorEmployeeStockPurchasePlanMember_1399893" use="optional" order="33" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTaxStatusAxis" xlink:label="loc_us-gaap_RetirementPlanTaxStatusAxis_646" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" xlink:to="loc_us-gaap_RetirementPlanTaxStatusAxis_646" use="optional" order="34" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTaxStatusDomain" xlink:label="loc_us-gaap_RetirementPlanTaxStatusDomain_647" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanTaxStatusAxis_646" xlink:to="loc_us-gaap_RetirementPlanTaxStatusDomain_647" use="optional" order="35" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTaxStatusDomain" xlink:label="loc_us-gaap_RetirementPlanTaxStatusDomain_647_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanTaxStatusAxis_646" xlink:to="loc_us-gaap_RetirementPlanTaxStatusDomain_647_default" use="optional" order="36" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis" xlink:label="loc_srt_StatementScenarioAxis_440997" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" xlink:to="loc_srt_StatementScenarioAxis_440997" use="optional" order="37" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srt_ScenarioUnspecifiedDomain_440998" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementScenarioAxis_440997" xlink:to="loc_srt_ScenarioUnspecifiedDomain_440998" use="optional" order="38" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srt_ScenarioUnspecifiedDomain_440998_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementScenarioAxis_440997" xlink:to="loc_srt_ScenarioUnspecifiedDomain_440998_default" use="optional" order="39" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_669" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_669" use="optional" order="40" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_662" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_662" use="optional" order="41" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_730" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_730" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_726" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_726" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_725" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_725" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_728" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_728" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_733" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_733" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_729" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_729" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_727" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_727" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_732" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_732" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_724" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_724" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_731" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_731" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_720" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_720" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_722" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_720" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_722" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_723" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_722" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_723" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_723_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_722" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_723_default" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RangeFiveMember" xlink:label="loc_alot_RangeFiveMember_736" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_723" xlink:to="loc_alot_RangeFiveMember_736" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RangeFourMember" xlink:label="loc_alot_RangeFourMember_735" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_723" xlink:to="loc_alot_RangeFourMember_735" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RangeThreeMember" xlink:label="loc_alot_RangeThreeMember_734" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_723" xlink:to="loc_alot_RangeThreeMember_734" use="optional" order="17" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_751" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_751" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_750" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_750" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_752" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_752" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_757" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_757" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_754" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_754" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_756" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_756" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_755" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_755" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_749" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_749" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_746" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_746" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_745" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_746" xlink:to="loc_us-gaap_AwardTypeAxis_745" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_748" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_745" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_748" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_748_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_745" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_748_default" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember" xlink:label="loc_alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember_1399943" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_748" xlink:to="loc_alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember_1399943" use="optional" order="13" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_657047" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_657044" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_StatementTable_657044" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_887980" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_657044" xlink:to="loc_srt_StatementGeographicalAxis_887980" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_887981" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_887980" xlink:to="loc_srt_SegmentGeographicalDomain_887981" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_887981_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_887980" xlink:to="loc_srt_SegmentGeographicalDomain_887981_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_CN" xlink:label="loc_country_CN_887982" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_887981" xlink:to="loc_country_CN_887982" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/stpr/2022/stpr-2022.xsd#stpr_DE" xlink:label="loc_stpr_DE_887984" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_887981" xlink:to="loc_stpr_DE_887984" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_657048" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_657044" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_657048" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_657049" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_657048" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_657049" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_657049_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_657048" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_657049_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticCountryMember" xlink:label="loc_us-gaap_DomesticCountryMember_657051" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_657049" xlink:to="loc_us-gaap_DomesticCountryMember_657051" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_887997" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_657044" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_887997" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_887999" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_887997" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_887999" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_887999_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_887997" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_887999_default" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOfIncomeTaxBenefitAxis" xlink:label="loc_alot_DetailsOfIncomeTaxBenefitAxis_1086532" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_657044" xlink:to="loc_alot_DetailsOfIncomeTaxBenefitAxis_1086532" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOfIncomeTaxBenefitDomain" xlink:label="loc_alot_DetailsOfIncomeTaxBenefitDomain_1086533" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_alot_DetailsOfIncomeTaxBenefitAxis_1086532" xlink:to="loc_alot_DetailsOfIncomeTaxBenefitDomain_1086533" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOfIncomeTaxBenefitDomain" xlink:label="loc_alot_DetailsOfIncomeTaxBenefitDomain_1086533_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_alot_DetailsOfIncomeTaxBenefitAxis_1086532" xlink:to="loc_alot_DetailsOfIncomeTaxBenefitDomain_1086533_default" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AdditionalForeignTaxCreditMember" xlink:label="loc_alot_AdditionalForeignTaxCreditMember_1396029" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_DetailsOfIncomeTaxBenefitDomain_1086533" xlink:to="loc_alot_AdditionalForeignTaxCreditMember_1396029" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TaxCreditsCarryForwardsMember" xlink:label="loc_alot_TaxCreditsCarryForwardsMember_1396034" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_alot_DetailsOfIncomeTaxBenefitDomain_1086533" xlink:to="loc_alot_TaxCreditsCarryForwardsMember_1396034" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod" xlink:label="loc_alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod_887986" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod_887986" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_794" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_794" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignEarningsRepatriated" xlink:label="loc_us-gaap_ForeignEarningsRepatriated_798" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_ForeignEarningsRepatriated_798" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense_796" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense_796" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod" xlink:label="loc_alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod_887995" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod_887995" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits_653711" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_UnrecognizedTaxBenefits_653711" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_1399930" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_1399930" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_887992" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_887992" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_797" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_797" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_793" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_793" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign_1388970" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign_1388970" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_887985" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_887985" use="optional" order="30" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_848" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_NumberOfCustomersAccountingForCreditRisk" xlink:label="loc_alot_NumberOfCustomersAccountingForCreditRisk_853" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_848" xlink:to="loc_alot_NumberOfCustomersAccountingForCreditRisk_853" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportableSegments" xlink:label="loc_us-gaap_NumberOfReportableSegments_852" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_848" xlink:to="loc_us-gaap_NumberOfReportableSegments_852" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_854" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_848" xlink:to="loc_us-gaap_Goodwill_854" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_846" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_848" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_846" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_849" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_846" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_849" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_847" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_849" xlink:to="loc_us-gaap_SegmentDomain_847" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_847_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_849" xlink:to="loc_us-gaap_SegmentDomain_847_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProductIdentificationMember" xlink:label="loc_alot_ProductIdentificationMember_851" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_847" xlink:to="loc_alot_ProductIdentificationMember_851" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TestAndMeasurementMember" xlink:label="loc_alot_TestAndMeasurementMember_850" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_847" xlink:to="loc_alot_TestAndMeasurementMember_850" use="optional" order="9" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_861" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_867" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_867" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_872" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_872" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_868" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_868" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_859" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_859" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_857" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_859" xlink:to="loc_srt_ConsolidationItemsAxis_857" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_858" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_857" xlink:to="loc_srt_ConsolidationItemsDomain_858" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_858_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_857" xlink:to="loc_srt_ConsolidationItemsDomain_858_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember_864" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_858" xlink:to="loc_us-gaap_CorporateNonSegmentMember_864" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember" xlink:label="loc_us-gaap_OperatingSegmentsMember_863" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_858" xlink:to="loc_us-gaap_OperatingSegmentsMember_863" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_862" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_859" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_862" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_860" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_862" xlink:to="loc_us-gaap_SegmentDomain_860" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_860_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_862" xlink:to="loc_us-gaap_SegmentDomain_860_default" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TestAndMeasurementMember" xlink:label="loc_alot_TestAndMeasurementMember_866" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_860" xlink:to="loc_alot_TestAndMeasurementMember_866" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProductIdentificationMember" xlink:label="loc_alot_ProductIdentificationMember_865" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_860" xlink:to="loc_alot_ProductIdentificationMember_865" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense_870" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_NonoperatingIncomeExpense_870" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_874" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_NetIncomeLoss_874" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_873" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_873" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_869" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_OperatingIncomeLoss_869" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PercentageOfOperatingProfitToNetSales" xlink:label="loc_alot_PercentageOfOperatingProfitToNetSales_871" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_alot_PercentageOfOperatingProfitToNetSales_871" use="optional" order="19" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_881" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_887" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_881" xlink:to="loc_us-gaap_Assets_887" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_879" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_881" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_879" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_877" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_879" xlink:to="loc_srt_ConsolidationItemsAxis_877" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_878" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_877" xlink:to="loc_srt_ConsolidationItemsDomain_878" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_878_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_877" xlink:to="loc_srt_ConsolidationItemsDomain_878_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember_884" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_878" xlink:to="loc_us-gaap_CorporateNonSegmentMember_884" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember" xlink:label="loc_us-gaap_OperatingSegmentsMember_883" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_878" xlink:to="loc_us-gaap_OperatingSegmentsMember_883" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_882" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_879" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_882" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_880" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_882" xlink:to="loc_us-gaap_SegmentDomain_880" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_880_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_882" xlink:to="loc_us-gaap_SegmentDomain_880_default" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProductIdentificationMember" xlink:label="loc_alot_ProductIdentificationMember_885" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_880" xlink:to="loc_alot_ProductIdentificationMember_885" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TestAndMeasurementMember" xlink:label="loc_alot_TestAndMeasurementMember_886" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_880" xlink:to="loc_alot_TestAndMeasurementMember_886" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_888" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_881" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_888" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_889" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_881" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_889" use="optional" order="14" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_892" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_893" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_892" xlink:to="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_893" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_895" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_893" xlink:to="loc_srt_StatementGeographicalAxis_895" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_894" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_895" xlink:to="loc_srt_SegmentGeographicalDomain_894" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_894_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_895" xlink:to="loc_srt_SegmentGeographicalDomain_894_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AsiaMember" xlink:label="loc_srt_AsiaMember_900" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_894" xlink:to="loc_srt_AsiaMember_900" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="loc_country_US_898" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_894" xlink:to="loc_country_US_898" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_CA" xlink:label="loc_country_CA_901" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_894" xlink:to="loc_country_CA_901" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CentralAndSouthAmericaMember" xlink:label="loc_alot_CentralAndSouthAmericaMember_902" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_894" xlink:to="loc_alot_CentralAndSouthAmericaMember_902" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EuropeMember" xlink:label="loc_srt_EuropeMember_899" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_894" xlink:to="loc_srt_EuropeMember_899" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_OtherCountriesMember" xlink:label="loc_alot_OtherCountriesMember_903" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_894" xlink:to="loc_alot_OtherCountriesMember_903" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_896" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_892" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_896" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncurrentAssets" xlink:label="loc_us-gaap_NoncurrentAssets_897" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_892" xlink:to="loc_us-gaap_NoncurrentAssets_897" use="optional" order="12" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_919" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTable" xlink:label="loc_us-gaap_ConcentrationRiskTable_920" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_919" xlink:to="loc_us-gaap_ConcentrationRiskTable_920" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_917" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_920" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_917" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_916" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_917" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_916" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_916_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_917" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_916_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsTotalMember" xlink:label="loc_us-gaap_CostOfGoodsTotalMember_922" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_916" xlink:to="loc_us-gaap_CostOfGoodsTotalMember_922" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TradeAccountsPayablesMember" xlink:label="loc_alot_TradeAccountsPayablesMember_923" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_916" xlink:to="loc_alot_TradeAccountsPayablesMember_923" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_1396216" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_920" xlink:to="loc_srt_MajorCustomersAxis_1396216" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_1396217" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_1396216" xlink:to="loc_srt_NameOfMajorCustomerDomain_1396217" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_1396217_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_1396216" xlink:to="loc_srt_NameOfMajorCustomerDomain_1396217_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CustomerMember" xlink:label="loc_alot_CustomerMember_1396221" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_1396217" xlink:to="loc_alot_CustomerMember_1396221" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_918" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_920" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_918" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_921" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_918" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_921" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_921_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_918" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_921_default" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplierConcentrationRiskMember" xlink:label="loc_us-gaap_SupplierConcentrationRiskMember_925" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_921" xlink:to="loc_us-gaap_SupplierConcentrationRiskMember_925" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_924" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_919" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_924" use="optional" order="15" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_994" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="loc_us-gaap_DebtLongtermAndShorttermCombinedAmount_1000" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_994" xlink:to="loc_us-gaap_DebtLongtermAndShorttermCombinedAmount_1000" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByBalanceSheetGroupingTable" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable_995" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_994" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTable_995" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_996" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_995" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_996" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_999" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_996" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_999" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_999_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_996" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_999_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_1004" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_999" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_1004" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByMeasurementBasisAxis" xlink:label="loc_us-gaap_FairValueByMeasurementBasisAxis_997" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_995" xlink:to="loc_us-gaap_FairValueByMeasurementBasisAxis_997" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PortionAtFairValueFairValueDisclosureMember" xlink:label="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_441036" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByMeasurementBasisAxis_997" xlink:to="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_441036" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PortionAtFairValueFairValueDisclosureMember" xlink:label="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_441036_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByMeasurementBasisAxis_997" xlink:to="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_441036_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EstimateOfFairValueFairValueDisclosureMember" xlink:label="loc_us-gaap_EstimateOfFairValueFairValueDisclosureMember_441037" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_441036" xlink:to="loc_us-gaap_EstimateOfFairValueFairValueDisclosureMember_441037" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CarryingReportedAmountFairValueDisclosureMember" xlink:label="loc_us-gaap_CarryingReportedAmountFairValueDisclosureMember_441038" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_441036" xlink:to="loc_us-gaap_CarryingReportedAmountFairValueDisclosureMember_441038" use="optional" order="11" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsDisclosureLineItems" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_1027" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_1030" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_1027" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_1030" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_1031" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_1027" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_1031" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDeductions" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDeductions_1032" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_1027" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDeductions_1032" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsDisclosureTable" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_1028" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_1027" xlink:to="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_1028" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_1026" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_1028" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_1026" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_1025" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_1026" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_1025" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_1025_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_1026" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_1025_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForCreditLossMember" xlink:label="loc_us-gaap_AllowanceForCreditLossMember_1029" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_1025" xlink:to="loc_us-gaap_AllowanceForCreditLossMember_1029" use="optional" order="8" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent" order="1.0" />
</definitionLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>11
<FILENAME>alot-20230131_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by DFIN XBRL Instance Document - http://www.dfinsolutions.com/ - Version R3.0 - on 18-April-2023 [01:16:43] {AM}-->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" roleURI="http://www.xbrl.org/2009/role/negatedLabel" />
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" />
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" />
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" />
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" />
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" />
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" roleURI="http://www.xbrl.org/2009/role/netLabel" />
<labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract" xlink:label="loc_dei_CoverAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_CoverAbstract" xml:lang="en-US">Cover [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_dei_CoverAbstract" xml:lang="en-US">Cover [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract" xlink:to="lab_dei_CoverAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_dei_EntityEmergingGrowthCompany" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityEmergingGrowthCompany" xml:lang="en-US">Entity Emerging Growth Company</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany" xlink:to="lab_dei_EntityEmergingGrowthCompany" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle" xlink:label="loc_dei_Security12bTitle" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_Security12bTitle" xml:lang="en-US">Title of 12(b) Security</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle" xlink:to="lab_dei_Security12bTitle" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag" xlink:label="loc_dei_AmendmentFlag" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_AmendmentFlag" xml:lang="en-US">Amendment Flag</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag" xlink:to="lab_dei_AmendmentFlag" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_DocumentPeriodEndDate" xml:lang="en-US">Document Period End Date</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate" xlink:to="lab_dei_DocumentPeriodEndDate" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_dei_DocumentFiscalYearFocus" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_DocumentFiscalYearFocus" xml:lang="en-US">Document Fiscal Year Focus</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus" xlink:to="lab_dei_DocumentFiscalYearFocus" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_dei_DocumentFiscalPeriodFocus" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xml:lang="en-US">Document Fiscal Period Focus</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus" xlink:to="lab_dei_DocumentFiscalPeriodFocus" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName" xlink:label="loc_dei_EntityRegistrantName" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityRegistrantName" xml:lang="en-US">Entity Registrant Name</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName" xlink:to="lab_dei_EntityRegistrantName" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_dei_EntityInteractiveDataCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityInteractiveDataCurrent" xml:lang="en-US">Entity Interactive Data Current</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityInteractiveDataCurrent" xlink:to="lab_dei_EntityInteractiveDataCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory" xlink:label="loc_dei_EntityFilerCategory" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityFilerCategory" xml:lang="en-US">Entity Filer Category</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory" xlink:to="lab_dei_EntityFilerCategory" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness" xlink:label="loc_dei_EntitySmallBusiness" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntitySmallBusiness" xml:lang="en-US">Entity Small Business</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntitySmallBusiness" xlink:to="lab_dei_EntitySmallBusiness" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_dei_CurrentFiscalYearEndDate" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_CurrentFiscalYearEndDate" xml:lang="en-US">Current Fiscal Year End Date</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate" xlink:to="lab_dei_CurrentFiscalYearEndDate" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName" xlink:label="loc_dei_SecurityExchangeName" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_SecurityExchangeName" xml:lang="en-US">Security Exchange Name</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName" xlink:to="lab_dei_SecurityExchangeName" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_dei_EntityAddressStateOrProvince" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityAddressStateOrProvince" xml:lang="en-US">Entity Address, State or Province</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince" xlink:to="lab_dei_EntityAddressStateOrProvince" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_dei_EntityIncorporationStateCountryCode" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xml:lang="en-US">Entity Incorporation, State or Country Code</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode" xlink:to="lab_dei_EntityIncorporationStateCountryCode" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_dei_EntityAddressPostalZipCode" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityAddressPostalZipCode" xml:lang="en-US">Entity Address, Postal Zip Code</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode" xlink:to="lab_dei_EntityAddressPostalZipCode" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="loc_dei_IcfrAuditorAttestationFlag" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_IcfrAuditorAttestationFlag" xml:lang="en-US">ICFR Auditor Attestation Flag</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_IcfrAuditorAttestationFlag" xlink:to="lab_dei_IcfrAuditorAttestationFlag" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport" xlink:label="loc_dei_DocumentTransitionReport" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_DocumentTransitionReport" xml:lang="en-US">Document Transition Report</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentTransitionReport" xlink:to="lab_dei_DocumentTransitionReport" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_dei_EntityCurrentReportingStatus" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityCurrentReportingStatus" xml:lang="en-US">Entity Current Reporting Status</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCurrentReportingStatus" xlink:to="lab_dei_EntityCurrentReportingStatus" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany" xlink:label="loc_dei_EntityShellCompany" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityShellCompany" xml:lang="en-US">Entity Shell Company</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityShellCompany" xlink:to="lab_dei_EntityShellCompany" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType" xlink:label="loc_dei_DocumentType" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_DocumentType" xml:lang="en-US">Document Type</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_dei_EntityCommonStockSharesOutstanding" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xml:lang="en-US">Entity Common Stock, Shares Outstanding</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding" xlink:to="lab_dei_EntityCommonStockSharesOutstanding" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol" xlink:label="loc_dei_TradingSymbol" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_TradingSymbol" xml:lang="en-US">Trading Symbol</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol" xlink:to="lab_dei_TradingSymbol" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey" xlink:label="loc_dei_EntityCentralIndexKey" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityCentralIndexKey" xml:lang="en-US">Entity Central Index Key</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey" xlink:to="lab_dei_EntityCentralIndexKey" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_dei_EntityTaxIdentificationNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityTaxIdentificationNumber" xml:lang="en-US">Entity Tax Identification Number</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber" xlink:to="lab_dei_EntityTaxIdentificationNumber" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_dei_EntityAddressAddressLine1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityAddressAddressLine1" xml:lang="en-US">Entity Address, Address Line One</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1" xlink:to="lab_dei_EntityAddressAddressLine1" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_dei_EntityAddressCityOrTown" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityAddressCityOrTown" xml:lang="en-US">Entity Address, City or Town</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_dei_EntityAddressCityOrTown" xml:lang="en-US">Entity Address, City or Town</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown" xlink:to="lab_dei_EntityAddressCityOrTown" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode" xlink:label="loc_dei_CityAreaCode" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_CityAreaCode" xml:lang="en-US">City Area Code</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode" xlink:to="lab_dei_CityAreaCode" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber" xlink:label="loc_dei_LocalPhoneNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_LocalPhoneNumber" xml:lang="en-US">Local Phone Number</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber" xlink:to="lab_dei_LocalPhoneNumber" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityWellKnownSeasonedIssuer" xml:lang="en-US">Entity Well-known Seasoned Issuer</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityWellKnownSeasonedIssuer" xlink:to="lab_dei_EntityWellKnownSeasonedIssuer" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityPublicFloat" xlink:label="loc_dei_EntityPublicFloat" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityPublicFloat" xml:lang="en-US">Entity Public Float</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityPublicFloat" xlink:to="lab_dei_EntityPublicFloat" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_dei_EntityVoluntaryFilers" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityVoluntaryFilers" xml:lang="en-US">Entity Voluntary Filers</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityVoluntaryFilers" xlink:to="lab_dei_EntityVoluntaryFilers" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber" xlink:label="loc_dei_EntityFileNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityFileNumber" xml:lang="en-US">Entity File Number</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber" xlink:to="lab_dei_EntityFileNumber" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentAnnualReport" xlink:label="loc_dei_DocumentAnnualReport" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_DocumentAnnualReport" xml:lang="en-US">Document Annual Report</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentAnnualReport" xlink:to="lab_dei_DocumentAnnualReport" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorName" xlink:label="loc_dei_AuditorName" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_AuditorName" xml:lang="en-US">Auditor Name</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_dei_AuditorName" xml:lang="en-US">Auditor Name</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AuditorName" xlink:to="lab_dei_AuditorName" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorFirmId" xlink:label="loc_dei_AuditorFirmId" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_AuditorFirmId" xml:lang="en-US">Auditor Firm ID</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_dei_AuditorFirmId" xml:lang="en-US">Auditor Firm ID</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AuditorFirmId" xlink:to="lab_dei_AuditorFirmId" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorLocation" xlink:label="loc_dei_AuditorLocation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_AuditorLocation" xml:lang="en-US">Auditor Location</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_dei_AuditorLocation" xml:lang="en-US">Auditor Location</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AuditorLocation" xlink:to="lab_dei_AuditorLocation" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xml:lang="en-US">Statement of Financial Position [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xml:lang="en-US">Statement of Financial Position [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AssetsAbstract" xml:lang="en-US">Assets [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AssetsAbstract" xml:lang="en-US">ASSETS</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="lab_us-gaap_AssetsAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_Assets" xml:lang="en-US">Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_Assets" xml:lang="en-US">TOTAL ASSETS</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_Assets" xml:lang="en-US">Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets" xlink:to="lab_us-gaap_Assets" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xml:lang="en-US">Property, Plant and Equipment, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xml:lang="en-US">Property, Plant and Equipment, net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xml:lang="en-US">Net Property Plant and Equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xml:lang="en-US">Operating Lease, Right-of-Use Asset</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xml:lang="en-US">Right of Use Asset</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xml:lang="en-US">Right of Use Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsMiscellaneousNoncurrent" xlink:label="loc_us-gaap_OtherAssetsMiscellaneousNoncurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherAssetsMiscellaneousNoncurrent" xml:lang="en-US">Other Assets, Miscellaneous, Noncurrent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OtherAssetsMiscellaneousNoncurrent" xml:lang="en-US">Other Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsMiscellaneousNoncurrent" xlink:to="lab_us-gaap_OtherAssetsMiscellaneousNoncurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xml:lang="en-US">Deferred Income Tax Assets, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xml:lang="en-US">Deferred Tax Assets, net</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="lab_us-gaap_DeferredIncomeTaxAssetsNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xml:lang="en-US">Finite-Lived Intangible Assets, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xml:lang="en-US">Identifiable Intangibles, net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xml:lang="en-US">Net Carrying Amount</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_Goodwill" xml:lang="en-US">Goodwill</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_Goodwill" xml:lang="en-US">Goodwill</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_Goodwill" xml:lang="en-US">Goodwill assigned</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill" xlink:to="lab_us-gaap_Goodwill" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaap_AssetsCurrentAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xml:lang="en-US">Assets, Current [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xml:lang="en-US">CURRENT ASSETS</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract" xlink:to="lab_us-gaap_AssetsCurrentAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryNet" xml:lang="en-US">Inventory, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_InventoryNet" xml:lang="en-US">Inventories</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_InventoryNet" xml:lang="en-US">Inventories</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet" xlink:to="lab_us-gaap_InventoryNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AssetsCurrent" xml:lang="en-US">Assets, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_AssetsCurrent" xml:lang="en-US">Total Current Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="lab_us-gaap_AssetsCurrent" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ErcReceivables" xlink:label="loc_alot_ErcReceivables" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ErcReceivables" xml:lang="en-US">Erc Receivables</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_ErcReceivables" xml:lang="en-US">Employee Retention Credit Receivable</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_ErcReceivables" xml:lang="en-US">ERC receivables</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ErcReceivables" xlink:to="lab_alot_ErcReceivables" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ErcReceivables" xml:lang="en-US">The amount receivable for Employee Retention Credit .</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xml:lang="en-US">Prepaid Expense and Other Assets, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xml:lang="en-US">Prepaid Expenses and Other Current Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xml:lang="en-US">Cash and Cash Equivalents</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xml:lang="en-US">Accounts Receivable, Net, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xml:lang="en-US">Accounts Receivable, net of reserves of $731 in 2023 and $826 in 2022</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent" xlink:to="lab_us-gaap_AccountsReceivableNetCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xml:lang="en-US">Liabilities and Equity [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xml:lang="en-US">LIABILITIES AND SHAREHOLDERS' EQUITY</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xml:lang="en-US">Liabilities, Current [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xml:lang="en-US">CURRENT LIABILITIES</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent" xml:lang="en-US">Accrued Income Taxes, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent" xml:lang="en-US">Income Taxes Payable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedIncomeTaxesCurrent" xlink:to="lab_us-gaap_AccruedIncomeTaxesCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccountsPayableCurrent" xml:lang="en-US">Accounts Payable, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccountsPayableCurrent" xml:lang="en-US">Accounts Payable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrent" xlink:to="lab_us-gaap_AccountsPayableCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LiabilitiesCurrent" xml:lang="en-US">Liabilities, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_LiabilitiesCurrent" xml:lang="en-US">Total Current Liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="lab_us-gaap_LiabilitiesCurrent" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationCurrent" xlink:label="loc_alot_RoyaltyObligationCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RoyaltyObligationCurrent" xml:lang="en-US">Royalty Obligation, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_RoyaltyObligationCurrent" xml:lang="en-US">Current Liability&#8212;Royalty Obligation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RoyaltyObligationCurrent" xlink:to="lab_alot_RoyaltyObligationCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RoyaltyObligationCurrent" xml:lang="en-US">Carrying amount of the short term portion of the guaranteed minimum royalty obligation related to Honeywell Agreement.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="loc_us-gaap_DeferredRevenueCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredRevenueCurrent" xml:lang="en-US">Deferred Revenue, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredRevenueCurrent" xml:lang="en-US">Deferred Revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueCurrent" xlink:to="lab_us-gaap_DeferredRevenueCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xml:lang="en-US">Employee-related Liabilities, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xml:lang="en-US">Accrued Compensation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xml:lang="en-US">Accrued Liabilities, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xml:lang="en-US">Other Accrued Expenses</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xml:lang="en-US">Total</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent" xlink:label="loc_us-gaap_LongTermDebtCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermDebtCurrent" xml:lang="en-US">Long-term Debt, Current Maturities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LongTermDebtCurrent" xml:lang="en-US">Current Portion of Long-Term Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_LongTermDebtCurrent" xml:lang="en-US">Current Portion of Term Loan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtCurrent" xlink:to="lab_us-gaap_LongTermDebtCurrent" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" xlink:label="loc_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" xml:lang="en-US">Accrued Royalties, Current, Excess Royalty Payment Due</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" xml:lang="en-US">Current Liability&#8212;Excess Royalty Payment Due</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/positiveLabel" xlink:label="lab_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" xml:lang="en-US">Accrued Royalties, Current, Excess Royalty Payment Due</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" xlink:to="lab_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" xml:lang="en-US">Accrued royalties in excess of guaranteed minimum royalty obligation- amount due within one year.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="loc_us-gaap_LinesOfCreditCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LinesOfCreditCurrent" xml:lang="en-US">Line of Credit, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/presentationGuidance" xlink:label="lab_us-gaap_LinesOfCreditCurrent" xml:lang="en-US">Revolving Line of Credit</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LinesOfCreditCurrent" xlink:to="lab_us-gaap_LinesOfCreditCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_Liabilities" xml:lang="en-US">Liabilities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_Liabilities" xml:lang="en-US">TOTAL LIABILITIES</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Liabilities" xlink:to="lab_us-gaap_Liabilities" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xml:lang="en-US">Liabilities and Equity</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xml:lang="en-US">TOTAL LIABILITIES AND SHAREHOLDERS' EQUITY</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaap_StockholdersEquityAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xml:lang="en-US">Stockholders' Equity Attributable to Parent [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xml:lang="en-US">SHAREHOLDERS' EQUITY</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityAbstract" xlink:to="lab_us-gaap_StockholdersEquityAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xml:lang="en-US">Additional Paid in Capital, Common Stock</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xml:lang="en-US">Additional&#160;Paid-in&#160;Capital</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="lab_us-gaap_AdditionalPaidInCapitalCommonStock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PreferredStockValue" xml:lang="en-US">Preferred Stock, Value, Issued</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PreferredStockValue" xml:lang="en-US">Preferred Stock</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockValue" xlink:to="lab_us-gaap_PreferredStockValue" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockholdersEquity" xml:lang="en-US">Stockholders' Equity Attributable to Parent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_StockholdersEquity" xml:lang="en-US">TOTAL SHAREHOLDERS' EQUITY</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_StockholdersEquity" xml:lang="en-US">Beginning Balance</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_StockholdersEquity" xml:lang="en-US">Ending Balance</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="lab_us-gaap_StockholdersEquity" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaap_TreasuryStockValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TreasuryStockValue" xml:lang="en-US">Treasury Stock, Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_TreasuryStockValue" xml:lang="en-US">Treasury Stock, at Cost</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockValue" xlink:to="lab_us-gaap_TreasuryStockValue" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xml:lang="en-US">Retained Earnings</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockValue" xml:lang="en-US">Common Stock, Value, Issued</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommonStockValue" xml:lang="en-US">Common Stock</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValue" xlink:to="lab_us-gaap_CommonStockValue" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xml:lang="en-US">Accumulated Other Comprehensive Loss, net of tax</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesNoncurrentAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LiabilitiesNoncurrentAbstract" xml:lang="en-US">Liabilities, Noncurrent [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LiabilitiesNoncurrentAbstract" xml:lang="en-US">NON-CURRENT&#160;LIABILITIES</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="lab_us-gaap_LiabilitiesNoncurrentAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrentAndNoncurrent" xlink:label="loc_us-gaap_TaxesPayableCurrentAndNoncurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TaxesPayableCurrentAndNoncurrent" xml:lang="en-US">Taxes Payable</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_TaxesPayableCurrentAndNoncurrent" xml:lang="en-US">Income Taxes Payable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxesPayableCurrentAndNoncurrent" xlink:to="lab_us-gaap_TaxesPayableCurrentAndNoncurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xml:lang="en-US">Operating Lease, Liability, Noncurrent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xml:lang="en-US">Lease Liabilities, net of current portion</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xml:lang="en-US">Lease Liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredRevenueNoncurrent" xlink:label="loc_us-gaap_DeferredRevenueNoncurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredRevenueNoncurrent" xml:lang="en-US">Deferred Revenue, Noncurrent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredRevenueNoncurrent" xml:lang="en-US">Deferred Revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueNoncurrent" xlink:to="lab_us-gaap_DeferredRevenueNoncurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaap_LongTermDebtNoncurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xml:lang="en-US">Long-term Debt, Excluding Current Maturities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xml:lang="en-US">Long-Term Debt, net of current portion</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xml:lang="en-US">Long-Term Debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtNoncurrent" xlink:to="lab_us-gaap_LongTermDebtNoncurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xml:lang="en-US">Deferred Income Tax Liabilities, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xml:lang="en-US">Deferred Tax Liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationNonCurrent" xlink:label="loc_alot_RoyaltyObligationNonCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RoyaltyObligationNonCurrent" xml:lang="en-US">Royalty Obligation Non Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_RoyaltyObligationNonCurrent" xml:lang="en-US">Royalty Obligation, net of current portion</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RoyaltyObligationNonCurrent" xlink:to="lab_alot_RoyaltyObligationNonCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RoyaltyObligationNonCurrent" xml:lang="en-US">Carrying amount of the long term portion of the guaranteed minimum royalty obligation related to Honeywell Agreement.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="loc_us-gaap_CommitmentsAndContingencies" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xml:lang="en-US">Commitments and Contingencies</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xml:lang="en-US">Commitments and Contingencies</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingencies" xlink:to="lab_us-gaap_CommitmentsAndContingencies" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockSharesIssued" xml:lang="en-US">Common Stock, Shares, Issued</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommonStockSharesIssued" xml:lang="en-US">Common Stock, Shares Issued</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued" xlink:to="lab_us-gaap_CommonStockSharesIssued" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xml:lang="en-US">Preferred Stock, Shares Authorized</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xml:lang="en-US">Preferred Stock, Shares Authorized</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesAuthorized" xlink:to="lab_us-gaap_PreferredStockSharesAuthorized" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaap_CommonStockSharesAuthorized" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xml:lang="en-US">Common Stock, Shares Authorized</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xml:lang="en-US">Common Stock, Shares Authorized</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized" xlink:to="lab_us-gaap_CommonStockSharesAuthorized" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xml:lang="en-US">Common Stock, Par Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xml:lang="en-US">Allowance for Doubtful Accounts Receivable, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xml:lang="en-US">Accounts Receivable, Reserves</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockShares" xlink:label="loc_us-gaap_TreasuryStockShares" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TreasuryStockShares" xml:lang="en-US">Treasury Stock, Shares</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_TreasuryStockShares" xml:lang="en-US">Treasury Stock, Shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockShares" xlink:to="lab_us-gaap_TreasuryStockShares" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xml:lang="en-US">Preferred Stock, Par or Stated Value Per Share</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xml:lang="en-US">Preferred Stock, Par Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_PreferredStockParOrStatedValuePerShare" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaap_PreferredStockSharesIssued" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xml:lang="en-US">Preferred Stock, Shares Issued</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xml:lang="en-US">Preferred Stock, Shares Issued</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesIssued" xlink:to="lab_us-gaap_PreferredStockSharesIssued" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaap_IncomeStatementAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeStatementAbstract" xml:lang="en-US">Income Statement [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract" xlink:to="lab_us-gaap_IncomeStatementAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="loc_us-gaap_NonoperatingIncomeExpenseAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NonoperatingIncomeExpenseAbstract" xml:lang="en-US">Nonoperating Income (Expense) [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NonoperatingIncomeExpenseAbstract" xml:lang="en-US">Other Income (Expense):</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="lab_us-gaap_NonoperatingIncomeExpenseAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NonoperatingIncomeExpense" xml:lang="en-US">Nonoperating Income (Expense)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_NonoperatingIncomeExpense" xml:lang="en-US">Other Income (Expense), net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_NonoperatingIncomeExpense" xml:lang="en-US">Other Income (Expense), Net</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonoperatingIncomeExpense" xlink:to="lab_us-gaap_NonoperatingIncomeExpense" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xml:lang="en-US">Other Nonoperating Income (Expense)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xml:lang="en-US">Other, net</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpense" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xml:lang="en-US">Gain (Loss) on Extinguishment of Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xml:lang="en-US">Gain on Extinguishment of Debt &#8211; PPP Loan</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xml:lang="en-US">Gain on Extinguishment of Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xml:lang="en-US">Gain on Extinguishment of Debt &#8211; PPP Loan</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xml:lang="en-US">Extinguishment of Debt &#8211; PPP Loan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:to="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaap_InterestExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InterestExpense" xml:lang="en-US">Interest Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_InterestExpense" xml:lang="en-US">Interest Expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestExpense" xlink:to="lab_us-gaap_InterestExpense" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xml:lang="en-US">Gain (Loss) on Disposition of Property Plant Equipment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xml:lang="en-US">Loss on Disposal of Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:label="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xml:lang="en-US">Loss on Disposal of Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xml:lang="en-US">Foreign Currency Transaction Gain (Loss), before Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xml:lang="en-US">Gain (Loss) on Foreign Currency Transactions</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xml:lang="en-US">Net transactional foreign exchange gain (loss)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:to="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetIncomeLoss" xml:lang="en-US">Net Income (Loss) Attributable to Parent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_NetIncomeLoss" xml:lang="en-US">Net Income</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NetIncomeLoss" xml:lang="en-US">Net Income</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_NetIncomeLoss" xml:lang="en-US">Net Income</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="lab_us-gaap_NetIncomeLoss" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingIncomeLoss" xml:lang="en-US">Operating Income (Loss)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_OperatingIncomeLoss" xml:lang="en-US">Operating Income</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OperatingIncomeLoss" xml:lang="en-US">Operating Income</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="lab_us-gaap_OperatingIncomeLoss" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GrossProfit" xml:lang="en-US">Gross Profit</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_GrossProfit" xml:lang="en-US">Gross Profit</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit" xlink:to="lab_us-gaap_GrossProfit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xml:lang="en-US">Income before Income Taxes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfRevenue" xlink:label="loc_us-gaap_CostOfRevenue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CostOfRevenue" xml:lang="en-US">Cost of Revenue</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CostOfRevenue" xml:lang="en-US">Cost of Revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfRevenue" xlink:to="lab_us-gaap_CostOfRevenue" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xml:lang="en-US">Income Tax Expense (Benefit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/presentationGuidance" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xml:lang="en-US">Income Tax Provision</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xml:lang="en-US">Total</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/positiveLabel" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xml:lang="en-US">Income Tax Provision</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xml:lang="en-US">Weighted Average Number of Common Shares Outstanding&#8212;Basic</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xml:lang="en-US">Earnings Per Share, Diluted</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xml:lang="en-US">Net Income Per Common Share&#8212;Diluted</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted" xlink:to="lab_us-gaap_EarningsPerShareDiluted" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xml:lang="en-US">Weighted Average Number of Common Shares Outstanding&#8212;Diluted</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xml:lang="en-US">Revenue from Contract with Customer, Excluding Assessed Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xml:lang="en-US">Revenue</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xml:lang="en-US">Total Revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xml:lang="en-US">Weighted Average Number Diluted Shares Outstanding Adjustment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xml:lang="en-US">Dilutive Effect of Common Stock Equivalents</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EarningsPerShareBasic" xml:lang="en-US">Earnings Per Share, Basic</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EarningsPerShareBasic" xml:lang="en-US">Net Income Per Common Share&#8212;Basic</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasic" xlink:to="lab_us-gaap_EarningsPerShareBasic" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingCostsAndExpensesAbstract" xlink:label="loc_us-gaap_OperatingCostsAndExpensesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingCostsAndExpensesAbstract" xml:lang="en-US">Operating Costs and Expenses [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OperatingCostsAndExpensesAbstract" xml:lang="en-US">Costs and Expenses:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingCostsAndExpensesAbstract" xlink:to="lab_us-gaap_OperatingCostsAndExpensesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaap_OperatingExpenses" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingExpenses" xml:lang="en-US">Operating Expenses</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_OperatingExpenses" xml:lang="en-US">Operating Expenses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingExpenses" xlink:to="lab_us-gaap_OperatingExpenses" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaap_SellingAndMarketingExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SellingAndMarketingExpense" xml:lang="en-US">Selling and Marketing Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SellingAndMarketingExpense" xml:lang="en-US">Selling and Marketing</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingAndMarketingExpense" xlink:to="lab_us-gaap_SellingAndMarketingExpense" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpense" xml:lang="en-US">General and Administrative Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpense" xml:lang="en-US">General and Administrative</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpense" xml:lang="en-US">Corporate Expenses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeneralAndAdministrativeExpense" xlink:to="lab_us-gaap_GeneralAndAdministrativeExpense" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xml:lang="en-US">Research and Development Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xml:lang="en-US">Research and Development</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpense" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpense" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xml:lang="en-US">Comprehensive Income</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xml:lang="en-US">Other Comprehensive Income (Loss), net of taxes and reclassification adjustments:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" xml:lang="en-US">Other Comprehensive Income (Loss), Derivative, Excluded Component, Increase (Decrease), after Adjustments and Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" xml:lang="en-US">Cross-Currency Interest Rate Swap Terminations</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xml:lang="en-US">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xml:lang="en-US">Foreign Currency Translation Adjustments</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" xml:lang="en-US">Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, after Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" xml:lang="en-US">(Gains) Losses from Cash Flow Hedges Reclassified to Income Statement</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" xml:lang="en-US">Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification, after Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" xml:lang="en-US">Change in Value of Derivatives Designated as Cash Flow Hedge</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xml:lang="en-US">Other Comprehensive Income (Loss)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xml:lang="en-US">Other Comprehensive Income (Loss)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementTable" xml:lang="en-US">Statement [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StatementTable" xml:lang="en-US">Statement [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_StatementTable" xml:lang="en-US">Statement [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable" xlink:to="lab_us-gaap_StatementTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xml:lang="en-US">Equity Components [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xml:lang="en-US">Equity Components [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis" xlink:to="lab_us-gaap_StatementEquityComponentsAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EquityComponentDomain" xml:lang="en-US">Equity Component [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EquityComponentDomain" xml:lang="en-US">Equity Component [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain" xlink:to="lab_us-gaap_EquityComponentDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockMember" xml:lang="en-US">Common Stock [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommonStockMember" xml:lang="en-US">Common Stock [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember" xlink:to="lab_us-gaap_CommonStockMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xml:lang="en-US">AOCI Attributable to Parent [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xml:lang="en-US">Additional Paid-in Capital [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xml:lang="en-US">Additional Paid-in Capital [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RetainedEarningsMember" xml:lang="en-US">Retained Earnings [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RetainedEarningsMember" xml:lang="en-US">Retained Earnings [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember" xlink:to="lab_us-gaap_RetainedEarningsMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember" xlink:label="loc_us-gaap_TreasuryStockMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TreasuryStockMember" xml:lang="en-US">Treasury Stock [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_TreasuryStockMember" xml:lang="en-US">Treasury Stock [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockMember" xlink:to="lab_us-gaap_TreasuryStockMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementLineItems" xml:lang="en-US">Statement [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StatementLineItems" xml:lang="en-US">Statement [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_StatementLineItems" xml:lang="en-US">Statement [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems" xlink:to="lab_us-gaap_StatementLineItems" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaap_SharesOutstanding" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharesOutstanding" xml:lang="en-US">Shares, Outstanding</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_SharesOutstanding" xml:lang="en-US">Beginning Balance, Shares</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_SharesOutstanding" xml:lang="en-US">Ending Balance, Shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesOutstanding" xlink:to="lab_us-gaap_SharesOutstanding" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsCommonStockCash" xlink:label="loc_us-gaap_DividendsCommonStockCash" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DividendsCommonStockCash" xml:lang="en-US">Dividends, Common Stock, Cash</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:label="lab_us-gaap_DividendsCommonStockCash" xml:lang="en-US">Common Stock&#8212;Cash Dividend&#8212;$0.07 per share</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsCommonStockCash" xlink:to="lab_us-gaap_DividendsCommonStockCash" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xml:lang="en-US">Stock Issued During Period, Shares, Restricted Stock Award, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xml:lang="en-US">Restricted Stock Awards Vested, net, Shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xml:lang="en-US">Adjustments to Additional Paid in Capital, Share-based Compensation, Stock Options, Requisite Service Period Recognition</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xml:lang="en-US">Share-Based Compensation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xml:lang="en-US">Stock Issued During Period, Value, Restricted Stock Award, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xml:lang="en-US">Restricted Stock Awards Vested, net</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xml:lang="en-US">Stock Issued During Period, Value, Stock Options Exercised</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xml:lang="en-US">Employee Option Exercises</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xml:lang="en-US">Employee Option Exercises, Shares</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xml:lang="en-US">Exercised, Number of Options</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareCashPaid" xlink:label="loc_us-gaap_CommonStockDividendsPerShareCashPaid" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockDividendsPerShareCashPaid" xml:lang="en-US">Common Stock, Dividends, Per Share, Cash Paid</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommonStockDividendsPerShareCashPaid" xml:lang="en-US">Cash dividend per share</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockDividendsPerShareCashPaid" xlink:to="lab_us-gaap_CommonStockDividendsPerShareCashPaid" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xml:lang="en-US">Statement of Cash Flows [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xml:lang="en-US">Noncash Investing and Financing Items [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xml:lang="en-US">Non-Cash Transactions:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:to="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment" xlink:label="loc_alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment" xml:lang="en-US">Reclassifcation of Inventories to Property, Plant and Equipment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment" xml:lang="en-US">Reclassifcation of Inventories to Property, Plant and Equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment" xlink:to="lab_alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment" xml:lang="en-US">Reclassifcation of inventories to property, plant and equipment.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement" xlink:label="loc_alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement" xml:lang="en-US">Recognition Of Intangible Asset And Royalty Payable Related To Asset Purchase And License Agreement</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement" xml:lang="en-US">Recognize intangible asset and royalty payable related to Honeywell Asset Purchase and License Agreement</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement" xlink:to="lab_alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement" xml:lang="en-US">Recognition of intangible asset and royalty payable related to asset purchase and license agreement.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="loc_us-gaap_SupplementalCashFlowInformationAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SupplementalCashFlowInformationAbstract" xml:lang="en-US">Supplemental Cash Flow Information [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_SupplementalCashFlowInformationAbstract" xml:lang="en-US">Supplemental Information:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="lab_us-gaap_SupplementalCashFlowInformationAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="loc_us-gaap_IncomeTaxesPaidNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxesPaidNet" xml:lang="en-US">Income Taxes Paid, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxesPaidNet" xml:lang="en-US">Cash Paid During the Period for Income Taxes, Net of Refunds</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxesPaidNet" xlink:to="lab_us-gaap_IncomeTaxesPaidNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPaidNet" xlink:label="loc_us-gaap_InterestPaidNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InterestPaidNet" xml:lang="en-US">Interest Paid, Excluding Capitalized Interest, Operating Activities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InterestPaidNet" xml:lang="en-US">Cash Paid During the Period for Interest</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestPaidNet" xlink:to="lab_us-gaap_InterestPaidNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xml:lang="en-US">Cash Flows from Financing Activities:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromStockPlans" xlink:label="loc_us-gaap_ProceedsFromStockPlans" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProceedsFromStockPlans" xml:lang="en-US">Proceeds from Stock Plans</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ProceedsFromStockPlans" xml:lang="en-US">Net Cash Proceeds from Share Purchases under Employee Stock Purchase Plan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromStockPlans" xlink:to="lab_us-gaap_ProceedsFromStockPlans" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xml:lang="en-US">Net Cash Provided (Used) by Financing Activities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfOtherLongTermDebt" xlink:label="loc_us-gaap_RepaymentsOfOtherLongTermDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RepaymentsOfOtherLongTermDebt" xml:lang="en-US">Repayments of Other Long-term Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_RepaymentsOfOtherLongTermDebt" xml:lang="en-US">Payoff of Long-Term Debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfOtherLongTermDebt" xlink:to="lab_us-gaap_RepaymentsOfOtherLongTermDebt" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="loc_us-gaap_PaymentsOfDividendsCommonStock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PaymentsOfDividendsCommonStock" xml:lang="en-US">Payments of Ordinary Dividends, Common Stock</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_PaymentsOfDividendsCommonStock" xml:lang="en-US">Dividends Paid</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfDividendsCommonStock" xlink:to="lab_us-gaap_PaymentsOfDividendsCommonStock" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PaymentsOfMinimumGuaranteeRoyaltyObligation" xlink:label="loc_alot_PaymentsOfMinimumGuaranteeRoyaltyObligation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_PaymentsOfMinimumGuaranteeRoyaltyObligation" xml:lang="en-US">Payments Of Minimum Guarantee Royalty Obligation</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_alot_PaymentsOfMinimumGuaranteeRoyaltyObligation" xml:lang="en-US">Payment of Minimum Guarantee Royalty Obligation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_PaymentsOfMinimumGuaranteeRoyaltyObligation" xlink:to="lab_alot_PaymentsOfMinimumGuaranteeRoyaltyObligation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_PaymentsOfMinimumGuaranteeRoyaltyObligation" xml:lang="en-US">Cash Outflow of Minimum Guarantee Royalty Obligation</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xml:lang="en-US">Payment, Tax Withholding, Share-based Payment Arrangement</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xml:lang="en-US">Net Cash Used for Payment of Taxes Related to Vested Restricted Stock</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xml:lang="en-US">Proceeds from (Repayments of) Lines of Credit</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xml:lang="en-US">Net (Repayments)/Borrowings under Revolving Credit Facility</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:to="lab_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDebtIssuanceCosts" xlink:label="loc_us-gaap_PaymentsOfDebtIssuanceCosts" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PaymentsOfDebtIssuanceCosts" xml:lang="en-US">Payments of Debt Issuance Costs</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_PaymentsOfDebtIssuanceCosts" xml:lang="en-US">Payments of Debt Issuance Costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:to="lab_us-gaap_PaymentsOfDebtIssuanceCosts" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" xlink:label="loc_alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" xml:lang="en-US">Proceeds From Issuance Of Paycheck Protection Program Loan</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" xml:lang="en-US">Proceeds from Long-Term Debt &#8211; PPP Loan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" xlink:to="lab_alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" xml:lang="en-US">Proceeds from issuance of paycheck protection program loan.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xml:lang="en-US">Proceeds from Issuance of Shares under Incentive and Share-based Compensation Plans, Including Stock Options</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xml:lang="en-US">Net Cash Proceeds from Employee Stock Option Plans</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xml:lang="en-US">Proceeds from Issuance of Long-term Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xml:lang="en-US">Proceeds from Long-Term Debt Borrowings</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfMediumTermNotes" xlink:label="loc_us-gaap_RepaymentsOfMediumTermNotes" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RepaymentsOfMediumTermNotes" xml:lang="en-US">Repayments of Medium-term Notes</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_RepaymentsOfMediumTermNotes" xml:lang="en-US">Principal Payments on Long-Term Debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfMediumTermNotes" xlink:to="lab_us-gaap_RepaymentsOfMediumTermNotes" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xml:lang="en-US">Net Increase (Decrease) in Cash and Cash Equivalents</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xml:lang="en-US">Cash Flows from Operating Activities:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xml:lang="en-US">Adjustments to Reconcile Net Income to Net Cash (Used) Provided By Operating Activities:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits" xml:lang="en-US">Deferred Income Taxes and Tax Credits</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits" xml:lang="en-US">Deferred Income Tax Provision (Benefit)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:to="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xml:lang="en-US">Changes in Assets and Liabilities, net of impact of acquisition:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xml:lang="en-US">Increase (Decrease) in Income Taxes Payable</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xml:lang="en-US">Income Taxes Payable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_OtherEmployeeRetentionCreditReceivable" xlink:label="loc_alot_OtherEmployeeRetentionCreditReceivable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_OtherEmployeeRetentionCreditReceivable" xml:lang="en-US">Other Employee Retention Credit Receivable</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_alot_OtherEmployeeRetentionCreditReceivable" xml:lang="en-US">Other Receivable &#8211; Employee Retention Credit Receivable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_OtherEmployeeRetentionCreditReceivable" xlink:to="lab_alot_OtherEmployeeRetentionCreditReceivable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_OtherEmployeeRetentionCreditReceivable" xml:lang="en-US">Amount currently receivable for refundable payroll taxes to be received from the Employee Retention Credit granted under the CARES act.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xml:lang="en-US">Increase (Decrease) in Other Operating Assets and Liabilities, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xml:lang="en-US">Other</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xml:lang="en-US">Accounts Receivable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xml:lang="en-US">Increase (Decrease) in Accounts Payable and Accrued Liabilities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xml:lang="en-US">Accounts Payable and Accrued Expenses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xml:lang="en-US">Increase (Decrease) in Inventories</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xml:lang="en-US">Inventories</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInInventories" xlink:to="lab_us-gaap_IncreaseDecreaseInInventories" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCosts" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AmortizationOfFinancingCosts" xml:lang="en-US">Amortization of Debt Issuance Costs</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AmortizationOfFinancingCosts" xml:lang="en-US">Amortization of Debt Issuance Costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfFinancingCosts" xlink:to="lab_us-gaap_AmortizationOfFinancingCosts" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensation" xml:lang="en-US">Share-based Compensation</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensation" xml:lang="en-US">Share-Based Compensation</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_ShareBasedCompensation" xml:lang="en-US">Total</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="lab_us-gaap_ShareBasedCompensation" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xml:lang="en-US">Depreciation, Depletion and Amortization</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xml:lang="en-US">Depreciation and Amortization</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:to="lab_us-gaap_DepreciationDepletionAndAmortization" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xml:lang="en-US">Net Cash Provided (Used) by Operating Activities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaap_ProfitLoss" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProfitLoss" xml:lang="en-US">Net Income (Loss), Including Portion Attributable to Noncontrolling Interest</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ProfitLoss" xml:lang="en-US">Net Income</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProfitLoss" xlink:to="lab_us-gaap_ProfitLoss" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xml:lang="en-US">Cash and Cash Equivalents, End of Year</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xml:lang="en-US">Cash and Cash Equivalents, Beginning of Year</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xml:lang="en-US">Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xml:lang="en-US">Effect of Foreign Exchange Rate Changes on Cash and Cash Equivalents</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xml:lang="en-US">Cash Flows from Investing Activities:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xml:lang="en-US">Net Cash Used by Investing Activities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xml:lang="en-US">Business Combination, Consideration Transferred</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xml:lang="en-US">Cash Paid for Astro Machine Acquisition, net of cash acquired</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xml:lang="en-US">Business Combination, Consideration Transferred</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="lab_us-gaap_BusinessCombinationConsiderationTransferred1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xml:lang="en-US">Additions to Property, Plant and Equipment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xml:lang="en-US">Capital Expenditures</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xml:lang="en-US">Accounting Policies [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingPoliciesAbstract" xlink:to="lab_us-gaap_AccountingPoliciesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xml:lang="en-US">Basis of Presentation and Significant Accounting Policies [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xml:lang="en-US">Summary of Significant Accounting Policies</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:to="lab_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationsAbstract" xml:lang="en-US">Business Combinations [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsAbstract" xlink:to="lab_us-gaap_BusinessCombinationsAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xml:lang="en-US">Business Combination Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xml:lang="en-US">Acquisitions</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:to="lab_us-gaap_BusinessCombinationDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xml:lang="en-US">Revenue Recognition</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaap_IntangibleAssetsDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IntangibleAssetsDisclosureTextBlock" xml:lang="en-US">Intangible Assets Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IntangibleAssetsDisclosureTextBlock" xml:lang="en-US">Intangible Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:to="lab_us-gaap_IntangibleAssetsDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xml:lang="en-US">Inventory Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureAbstract" xlink:to="lab_us-gaap_InventoryDisclosureAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xml:lang="en-US">Inventory Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xml:lang="en-US">Inventories</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureTextBlock" xlink:to="lab_us-gaap_InventoryDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xml:lang="en-US">Property, Plant and Equipment [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xml:lang="en-US">Property, Plant and Equipment Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xml:lang="en-US">Property, Plant and Equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PayablesAndAccrualsAbstract" xml:lang="en-US">Payables and Accruals [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract" xlink:to="lab_us-gaap_PayablesAndAccrualsAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xml:lang="en-US">Accounts Payable and Accrued Liabilities Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xml:lang="en-US">Accrued Expenses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:to="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xml:lang="en-US">Debt Disclosure [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xml:lang="en-US">Debt Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureAbstract" xlink:to="lab_us-gaap_DebtDisclosureAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="loc_us-gaap_DebtDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtDisclosureTextBlock" xml:lang="en-US">Debt Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtDisclosureTextBlock" xml:lang="en-US">Credit Agreement and Long-Term Debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureTextBlock" xlink:to="lab_us-gaap_DebtDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DisclosureForPaycheckProtectionProgramLoanTextBlock" xlink:label="loc_alot_DisclosureForPaycheckProtectionProgramLoanTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DisclosureForPaycheckProtectionProgramLoanTextBlock" xml:lang="en-US">Disclosure For Paycheck Protection Program Loan [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DisclosureForPaycheckProtectionProgramLoanTextBlock" xml:lang="en-US">Paycheck Protection Program Loan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DisclosureForPaycheckProtectionProgramLoanTextBlock" xlink:to="lab_alot_DisclosureForPaycheckProtectionProgramLoanTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DisclosureForPaycheckProtectionProgramLoanTextBlock" xml:lang="en-US">Disclosure for Paycheck Protection Program Loan.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xml:lang="en-US">Derivative Financial Instruments and Risk Management</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditDisclosureAbstract" xlink:label="loc_alot_EmployeeRetentionCreditDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_EmployeeRetentionCreditDisclosureAbstract" xml:lang="en-US">Employee Retention Credit Disclosure [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_EmployeeRetentionCreditDisclosureAbstract" xml:lang="en-US">Employee Retention Credit Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureAbstract" xlink:to="lab_alot_EmployeeRetentionCreditDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_EmployeeRetentionCreditDisclosureAbstract" xml:lang="en-US">Employee retention credit disclosure.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DisclosureForEmployeeRetentionCreditTextBlock" xlink:label="loc_alot_DisclosureForEmployeeRetentionCreditTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DisclosureForEmployeeRetentionCreditTextBlock" xml:lang="en-US">Disclosure For Employee Retention Credit [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DisclosureForEmployeeRetentionCreditTextBlock" xml:lang="en-US">Employee Retention Credit</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DisclosureForEmployeeRetentionCreditTextBlock" xlink:to="lab_alot_DisclosureForEmployeeRetentionCreditTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DisclosureForEmployeeRetentionCreditTextBlock" xml:lang="en-US">Disclosure for Employee retention credit.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationDisclosureAbstract" xlink:label="loc_alot_RoyaltyObligationDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RoyaltyObligationDisclosureAbstract" xml:lang="en-US">Royalty Obligation Disclosure [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_RoyaltyObligationDisclosureAbstract" xml:lang="en-US">Royalty Obligation Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RoyaltyObligationDisclosureAbstract" xlink:to="lab_alot_RoyaltyObligationDisclosureAbstract" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock" xlink:label="loc_alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock" xml:lang="en-US">Disclosure For The Honeywell Royalty Obligation [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock" xml:lang="en-US">Royalty Obligation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock" xlink:to="lab_alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock" xml:lang="en-US">Disclosure for the honeywell royalty obligation.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LeasesAbstract" xml:lang="en-US">Leases [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LeasesAbstract" xml:lang="en-US">Leases [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAbstract" xlink:to="lab_us-gaap_LeasesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xml:lang="en-US">Lessee, Operating Leases [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xml:lang="en-US">Leases</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeasesTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EquityAbstract" xml:lang="en-US">Equity [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityAbstract" xlink:to="lab_us-gaap_EquityAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="loc_us-gaap_ComprehensiveIncomeNoteTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ComprehensiveIncomeNoteTextBlock" xml:lang="en-US">Comprehensive Income (Loss) Note [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ComprehensiveIncomeNoteTextBlock" xml:lang="en-US">Accumulated Other Comprehensive Loss</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:to="lab_us-gaap_ComprehensiveIncomeNoteTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FederalHomeLoanBanksAbstract" xlink:label="loc_us-gaap_FederalHomeLoanBanksAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FederalHomeLoanBanksAbstract" xml:lang="en-US">Federal Home Loan Banks [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FederalHomeLoanBanksAbstract" xlink:to="lab_us-gaap_FederalHomeLoanBanksAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xml:lang="en-US">Stockholders' Equity Note Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xml:lang="en-US">Shareholders' Equity</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xml:lang="en-US">Disclosure of Compensation Related Costs, Share-based Payments [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xml:lang="en-US">Disclosure of Compensation Related Costs, Share-based Payments [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xml:lang="en-US">Share-Based Compensation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xml:lang="en-US">Income Tax Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:to="lab_us-gaap_IncomeTaxDisclosureAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xml:lang="en-US">Income Tax Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xml:lang="en-US">Income Taxes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="lab_us-gaap_IncomeTaxDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SegmentReportingAbstract" xml:lang="en-US">Segment Reporting [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingAbstract" xlink:to="lab_us-gaap_SegmentReportingAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xml:lang="en-US">Nature of Operations, Segment Reporting and Geographical Information</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="lab_us-gaap_SegmentReportingDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PostemploymentBenefitsAbstract" xlink:label="loc_us-gaap_PostemploymentBenefitsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PostemploymentBenefitsAbstract" xml:lang="en-US">Postemployment Benefits [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PostemploymentBenefitsAbstract" xlink:to="lab_us-gaap_PostemploymentBenefitsAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" xlink:label="loc_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" xml:lang="en-US">Compensation and Employee Benefit Plans [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" xml:lang="en-US">Employee Benefit Plans</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" xlink:to="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GuaranteesAndProductWarrantiesAbstract" xlink:label="loc_us-gaap_GuaranteesAndProductWarrantiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GuaranteesAndProductWarrantiesAbstract" xml:lang="en-US">Guarantees and Product Warranties [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GuaranteesAndProductWarrantiesAbstract" xlink:to="lab_us-gaap_GuaranteesAndProductWarrantiesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyDisclosureTextBlock" xlink:label="loc_us-gaap_ProductWarrantyDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProductWarrantyDisclosureTextBlock" xml:lang="en-US">Product Warranty Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ProductWarrantyDisclosureTextBlock" xml:lang="en-US">Product Warranty Liability</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:to="lab_us-gaap_ProductWarrantyDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RisksAndUncertaintiesAbstract" xlink:label="loc_us-gaap_RisksAndUncertaintiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RisksAndUncertaintiesAbstract" xml:lang="en-US">Risks and Uncertainties [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RisksAndUncertaintiesAbstract" xlink:to="lab_us-gaap_RisksAndUncertaintiesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:label="loc_us-gaap_ConcentrationRiskDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskDisclosureTextBlock" xml:lang="en-US">Concentration Risk Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskDisclosureTextBlock" xml:lang="en-US">Concentration of Risk</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:to="lab_us-gaap_ConcentrationRiskDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xml:lang="en-US">Commitments and Contingencies</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract" xml:lang="en-US">Fair Value Disclosures [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract" xlink:to="lab_us-gaap_FairValueDisclosuresAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xml:lang="en-US">Fair Value Disclosures [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xml:lang="en-US">Fair Value Measurements</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresTextBlock" xlink:to="lab_us-gaap_FairValueDisclosuresTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsAbstract" xlink:label="loc_srt_ValuationAndQualifyingAccountsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_ValuationAndQualifyingAccountsAbstract" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ValuationAndQualifyingAccountsAbstract" xlink:to="lab_srt_ValuationAndQualifyingAccountsAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xlink:label="loc_srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xml:lang="en-US">SEC Schedule, 12-09, Schedule of Valuation and Qualifying Accounts Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xml:lang="en-US">Schedule II - Valuation and Qualifying Accounts and Reserves</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xlink:to="lab_srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xml:lang="en-US">Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xml:lang="en-US">Goodwill</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="loc_us-gaap_EarningsPerSharePolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EarningsPerSharePolicyTextBlock" xml:lang="en-US">Earnings Per Share, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EarningsPerSharePolicyTextBlock" xml:lang="en-US">Net Income Per Common Share</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerSharePolicyTextBlock" xlink:to="lab_us-gaap_EarningsPerSharePolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingCostsPolicyTextBlock" xlink:label="loc_us-gaap_AdvertisingCostsPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdvertisingCostsPolicyTextBlock" xml:lang="en-US">Advertising Costs, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AdvertisingCostsPolicyTextBlock" xml:lang="en-US">Advertising</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdvertisingCostsPolicyTextBlock" xlink:to="lab_us-gaap_AdvertisingCostsPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LessorLeasesPolicyTextBlock" xlink:label="loc_us-gaap_LessorLeasesPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LessorLeasesPolicyTextBlock" xml:lang="en-US">Lessor, Leases [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LessorLeasesPolicyTextBlock" xml:lang="en-US">Leases</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorLeasesPolicyTextBlock" xlink:to="lab_us-gaap_LessorLeasesPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xml:lang="en-US">Reclassification, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xml:lang="en-US">Reclassification</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:to="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxPolicyTextBlock" xml:lang="en-US">Income Tax, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxPolicyTextBlock" xml:lang="en-US">Income Taxes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxPolicyTextBlock" xlink:to="lab_us-gaap_IncomeTaxPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SelfInsuranceReservePolicyTextBlock" xlink:label="loc_us-gaap_SelfInsuranceReservePolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SelfInsuranceReservePolicyTextBlock" xml:lang="en-US">Self Insurance Reserve [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_SelfInsuranceReservePolicyTextBlock" xml:lang="en-US">Self-Insurance</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SelfInsuranceReservePolicyTextBlock" xlink:to="lab_us-gaap_SelfInsuranceReservePolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xml:lang="en-US">Fair Value of Financial Instruments, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xml:lang="en-US">Fair Value Measurement</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:to="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xml:lang="en-US">Basis of Accounting, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xml:lang="en-US">Basis of Presentation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:to="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpensePolicy" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpensePolicy" xml:lang="en-US">Research and Development Expense, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpensePolicy" xml:lang="en-US">Research and Development Costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpensePolicy" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="loc_us-gaap_InventoryPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryPolicyTextBlock" xml:lang="en-US">Inventory, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InventoryPolicyTextBlock" xml:lang="en-US">Inventories</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryPolicyTextBlock" xlink:to="lab_us-gaap_InventoryPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="loc_us-gaap_RevenueRecognitionPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RevenueRecognitionPolicyTextBlock" xml:lang="en-US">Revenue Recognition, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RevenueRecognitionPolicyTextBlock" xml:lang="en-US">Revenue Recognition</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRecognitionPolicyTextBlock" xlink:to="lab_us-gaap_RevenueRecognitionPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xml:lang="en-US">Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xml:lang="en-US">Long-Lived Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UseOfEstimates" xlink:label="loc_us-gaap_UseOfEstimates" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_UseOfEstimates" xml:lang="en-US">Use of Estimates, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_UseOfEstimates" xml:lang="en-US">Use of Estimates</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UseOfEstimates" xlink:to="lab_us-gaap_UseOfEstimates" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="loc_us-gaap_ConsolidationPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConsolidationPolicyTextBlock" xml:lang="en-US">Consolidation, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConsolidationPolicyTextBlock" xml:lang="en-US">Principles of Consolidation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConsolidationPolicyTextBlock" xlink:to="lab_us-gaap_ConsolidationPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xml:lang="en-US">Property, Plant and Equipment, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xml:lang="en-US">Property, Plant and Equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xml:lang="en-US">Cash and Cash Equivalents, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xml:lang="en-US">Cash and Cash Equivalents</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:to="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xml:lang="en-US">Recent Accounting Pronouncements</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xml:lang="en-US">Share-based Compensation, Option and Incentive Plans Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xml:lang="en-US">Share-Based Compensation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xml:lang="en-US">Foreign Currency Transactions and Translations Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xml:lang="en-US">Foreign Currency Translation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:to="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativesPolicyTextBlock" xlink:label="loc_us-gaap_DerivativesPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DerivativesPolicyTextBlock" xml:lang="en-US">Derivatives, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DerivativesPolicyTextBlock" xml:lang="en-US">Derivative Financial Instruments</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativesPolicyTextBlock" xlink:to="lab_us-gaap_DerivativesPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesPolicyTextBlock" xlink:label="loc_us-gaap_ReceivablesPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ReceivablesPolicyTextBlock" xml:lang="en-US">Receivables, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ReceivablesPolicyTextBlock" xml:lang="en-US">Accounts Receivables and Allowance for Doubtful Accounts</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReceivablesPolicyTextBlock" xlink:to="lab_us-gaap_ReceivablesPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xml:lang="en-US">Goodwill and Intangible Assets, Intangible Assets, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xml:lang="en-US">Intangible Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsPolicy" xlink:label="loc_us-gaap_BusinessCombinationsPolicy" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationsPolicy" xml:lang="en-US">Business Combinations Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_BusinessCombinationsPolicy" xml:lang="en-US">Business Combinations</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsPolicy" xlink:to="lab_us-gaap_BusinessCombinationsPolicy" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xml:lang="en-US">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xml:lang="en-US">Summary of Purchase Price of Acquisition Allocated on Basis of Fair Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xml:lang="en-US">Summary of Fair Value of the Acquired Identifiable Intangible Assets and Related Estimated Useful Lives</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xml:lang="en-US">Business Acquisition, Pro Forma Information [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xml:lang="en-US">Summary of Revenue and Earnings Before Taxes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xml:lang="en-US">Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xml:lang="en-US">Summary of Acquired Identifiable Intangible Asset</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:to="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xml:lang="en-US">Summary of Revenues Disaggregated by Primary Geographic Markets and Major Product Type</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xml:lang="en-US">Summary of Estimated Amortization Expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:to="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xml:lang="en-US">Fair Value of Acquired Identifiable Intangible Assets and Related Estimated Useful Lives</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xml:lang="en-US">Components of Inventories</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xml:lang="en-US">Summary of Property, Plant and Equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xml:lang="en-US">Schedule of Accrued Liabilities [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xml:lang="en-US">Summary of Accrued Expenses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfDebtTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfDebtTableTextBlock" xml:lang="en-US">Schedule of Debt [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfDebtTableTextBlock" xml:lang="en-US">Schedule of Long Term Debt in the Accompanying Condensed Consolidated Balance Sheets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDebtTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfDebtTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xml:lang="en-US">Schedule of Maturities of Long-term Debt [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xml:lang="en-US">Schedule of Required Principal Payments Remaining on Long Term Debt Outstanding</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xml:lang="en-US">Schedule of Impact of the Derivative Instruments in the Condensed Consolidated Financial Statements</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:to="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="loc_us-gaap_LeaseCostTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xml:lang="en-US">Lease, Cost [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xml:lang="en-US">Schedule Lease Cost Information</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCostTableTextBlock" xlink:to="lab_us-gaap_LeaseCostTableTextBlock" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock" xlink:label="loc_alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock" xml:lang="en-US">Schedule Of Balance Sheet And Other Information Related To Operating Leases [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock" xml:lang="en-US">Schedule Of Balance Sheet And Other Information Related To Operating Leases</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock" xlink:to="lab_alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock" xml:lang="en-US">Schedule of balance sheet and other information related to operating leases.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xml:lang="en-US">Schedule of Cash Flow, Supplemental Disclosures [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xml:lang="en-US">Supplemental Cash Flow Information Related To Leases</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xml:lang="en-US">Schedule of Maturities Of Lease Liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xml:lang="en-US">Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xml:lang="en-US">Changes in Balance of Accumulated Other Comprehensive Loss</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" xml:lang="en-US">Schedule of Compensation Cost for Share-based Payment Arrangements, Allocation of Share-based Compensation Costs by Plan [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" xml:lang="en-US">Share-Based Compensation Expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" xml:lang="en-US">Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" xml:lang="en-US">Summary of Options Outstanding</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xml:lang="en-US">Schedule of Share-based Compensation, Restricted Stock and Restricted Stock Units Activity [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xml:lang="en-US">Aggregated Information Regarding RSUs and RSAs Granted</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xml:lang="en-US">Share-based Compensation, Stock Options, Activity [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xml:lang="en-US">Aggregated Information Regarding Stock Options Granted</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xml:lang="en-US">Schedule of Deferred Tax Assets and Liabilities [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xml:lang="en-US">Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xml:lang="en-US">Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xml:lang="en-US">Changes in Balance of Unrecognized Tax Benefits, Excluding Interest and Penalties</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xml:lang="en-US">Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xml:lang="en-US">Components of Provision for Income Taxes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xml:lang="en-US">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xml:lang="en-US">Reconciliation of income tax provision/(benefit) With The Amount Computed By Applying The Statutory Federal Income Tax Rate To The Income Before Income Tax Provision/(benefit)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xml:lang="en-US">Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xml:lang="en-US">Components of Income before Income Taxes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xml:lang="en-US">Net Sales and Segment Operating Profit (loss) for Each Reporting Segment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" xlink:label="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" xml:lang="en-US">Reconciliation of Other Significant Reconciling Items from Segments to Consolidated [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" xml:lang="en-US">Summary of Other Information by Segment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" xlink:to="lab_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xml:lang="en-US">Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xml:lang="en-US">Summary of Selected Financial Information by Geographic Area</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xml:lang="en-US">Schedule of Product Warranty Liability [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xml:lang="en-US">Activity in Product Warranty Liability</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xml:lang="en-US">Summary of Changes in Fair value of Level 3 Financial Liability</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:to="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SummaryOfSignificantAccountingPoliciesTable" xlink:label="loc_alot_SummaryOfSignificantAccountingPoliciesTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_SummaryOfSignificantAccountingPoliciesTable" xml:lang="en-US">Summary Of Significant Accounting Policies [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_SummaryOfSignificantAccountingPoliciesTable" xml:lang="en-US">Summary Of Significant Accounting Policies [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable" xlink:to="lab_alot_SummaryOfSignificantAccountingPoliciesTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_SummaryOfSignificantAccountingPoliciesTable" xml:lang="en-US">Summary Of Significant Accounting Policies [Table]</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentAxis" xml:lang="en-US">Debt Instrument [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentAxis" xml:lang="en-US">Debt Instrument [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentAxis" xml:lang="en-US">Debt Instrument [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentAxis" xlink:to="lab_us-gaap_DebtInstrumentAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xml:lang="en-US">Debt Instrument, Name [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xml:lang="en-US">Debt Instrument, Name [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xml:lang="en-US">Debt Instrument, Name [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentNameDomain" xlink:to="lab_us-gaap_DebtInstrumentNameDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PromissoryNoteMember" xlink:label="loc_alot_PromissoryNoteMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_PromissoryNoteMember" xml:lang="en-US">Promissory Note [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_PromissoryNoteMember" xlink:to="lab_alot_PromissoryNoteMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xml:lang="en-US">Concentration Risk Benchmark [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xml:lang="en-US">Concentration Risk Benchmark [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xml:lang="en-US">Concentration Risk Benchmark [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xml:lang="en-US">Concentration Risk Benchmark [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xml:lang="en-US">Concentration Risk Benchmark [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xml:lang="en-US">Concentration Risk Benchmark [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="lab_us-gaap_ConcentrationRiskBenchmarkDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SalesRevenueNetMember" xml:lang="en-US">Sales Revenue, Net [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SalesRevenueNetMember" xml:lang="en-US">Sales Revenue, Net [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SalesRevenueNetMember" xlink:to="lab_us-gaap_SalesRevenueNetMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ComputerEquipmentAndSoftwareMember" xlink:label="loc_alot_ComputerEquipmentAndSoftwareMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ComputerEquipmentAndSoftwareMember" xml:lang="en-US">Computer Equipment And Software [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_ComputerEquipmentAndSoftwareMember" xml:lang="en-US">Computer Equipment And Software [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ComputerEquipmentAndSoftwareMember" xlink:to="lab_alot_ComputerEquipmentAndSoftwareMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ComputerEquipmentAndSoftwareMember" xml:lang="en-US">Computer Equipment And Software [Member]</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaap_MachineryAndEquipmentMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_MachineryAndEquipmentMember" xml:lang="en-US">Machinery and Equipment [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_MachineryAndEquipmentMember" xml:lang="en-US">Machinery and Equipment [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MachineryAndEquipmentMember" xlink:to="lab_us-gaap_MachineryAndEquipmentMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandImprovementsMember" xlink:label="loc_us-gaap_LandImprovementsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LandImprovementsMember" xml:lang="en-US">Land Improvements [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LandImprovementsMember" xml:lang="en-US">Land Improvements [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LandImprovementsMember" xlink:to="lab_us-gaap_LandImprovementsMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BuildingAndLeaseholdImprovementsMember" xlink:label="loc_alot_BuildingAndLeaseholdImprovementsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_BuildingAndLeaseholdImprovementsMember" xml:lang="en-US">Building And Leasehold Improvements [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_BuildingAndLeaseholdImprovementsMember" xml:lang="en-US">Building And Leasehold Improvements [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_BuildingAndLeaseholdImprovementsMember" xlink:to="lab_alot_BuildingAndLeaseholdImprovementsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_BuildingAndLeaseholdImprovementsMember" xml:lang="en-US">Building And Leasehold Improvements [Member]</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xml:lang="en-US">Concentration Risk Type [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xml:lang="en-US">Concentration Risk Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis" xlink:to="lab_us-gaap_ConcentrationRiskByTypeAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xml:lang="en-US">Concentration Risk Type [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xml:lang="en-US">Concentration Risk Type [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain" xlink:to="lab_us-gaap_ConcentrationRiskTypeDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember" xml:lang="en-US">Customer Concentration Risk [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember" xml:lang="en-US">Customer Concentration Risk [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerConcentrationRiskMember" xlink:to="lab_us-gaap_CustomerConcentrationRiskMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_RangeAxis" xml:lang="en-US">Range [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_RangeAxis" xml:lang="en-US">Range [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_srt_RangeAxis" xml:lang="en-US">Range [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis" xlink:to="lab_srt_RangeAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_RangeMember" xml:lang="en-US">Range [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_RangeMember" xml:lang="en-US">Range [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_srt_RangeMember" xml:lang="en-US">Range [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember" xlink:to="lab_srt_RangeMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_MinimumMember" xml:lang="en-US">Minimum [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_MinimumMember" xml:lang="en-US">Minimum [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember" xlink:to="lab_srt_MinimumMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_MaximumMember" xml:lang="en-US">Maximum [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_MaximumMember" xml:lang="en-US">Maximum [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember" xlink:to="lab_srt_MaximumMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeAxis" xlink:label="loc_us-gaap_TradingActivityByTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TradingActivityByTypeAxis" xml:lang="en-US">Trading Activity [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradingActivityByTypeAxis" xlink:to="lab_us-gaap_TradingActivityByTypeAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeDomain" xlink:label="loc_us-gaap_TradingActivityByTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TradingActivityByTypeDomain" xml:lang="en-US">Trading Activity, by Type [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradingActivityByTypeDomain" xlink:to="lab_us-gaap_TradingActivityByTypeDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignExchangeMember" xlink:label="loc_us-gaap_ForeignExchangeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ForeignExchangeMember" xml:lang="en-US">Foreign Exchange [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ForeignExchangeMember" xml:lang="en-US">Foreign Exchange [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignExchangeMember" xlink:to="lab_us-gaap_ForeignExchangeMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CreditFacilityAxis" xml:lang="en-US">Credit Facility [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CreditFacilityAxis" xml:lang="en-US">Credit Facility [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_CreditFacilityAxis" xml:lang="en-US">Credit Facility [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityAxis" xlink:to="lab_us-gaap_CreditFacilityAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CreditFacilityDomain" xml:lang="en-US">Credit Facility [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CreditFacilityDomain" xml:lang="en-US">Credit Facility [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_CreditFacilityDomain" xml:lang="en-US">Credit Facility [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityDomain" xlink:to="lab_us-gaap_CreditFacilityDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PaycheckProtectionProgramLoanMember" xlink:label="loc_alot_PaycheckProtectionProgramLoanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_PaycheckProtectionProgramLoanMember" xml:lang="en-US">Paycheck Protection Program Loan [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_PaycheckProtectionProgramLoanMember" xml:lang="en-US">Paycheck Protection Program Loan [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_PaycheckProtectionProgramLoanMember" xml:lang="en-US">Paycheck Protection Program Loan [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_PaycheckProtectionProgramLoanMember" xlink:to="lab_alot_PaycheckProtectionProgramLoanMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_ProductOrServiceAxis" xml:lang="en-US">Product and Service [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_ProductOrServiceAxis" xml:lang="en-US">Product and Service [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductOrServiceAxis" xlink:to="lab_srt_ProductOrServiceAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_ProductsAndServicesDomain" xml:lang="en-US">Product and Service [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_ProductsAndServicesDomain" xml:lang="en-US">Product and Service [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductsAndServicesDomain" xlink:to="lab_srt_ProductsAndServicesDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AirborneProductMember" xlink:label="loc_alot_AirborneProductMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_AirborneProductMember" xml:lang="en-US">Airborne Product [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_AirborneProductMember" xml:lang="en-US">Airborne Product [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_AirborneProductMember" xlink:to="lab_alot_AirborneProductMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_AirborneProductMember" xml:lang="en-US">Airborne product.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="loc_us-gaap_LineOfCreditFacilityAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LineOfCreditFacilityAxis" xml:lang="en-US">Lender Name [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LineOfCreditFacilityAxis" xml:lang="en-US">Lender Name [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis" xlink:to="lab_us-gaap_LineOfCreditFacilityAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LineOfCreditFacilityLenderDomain" xml:lang="en-US">Line of Credit Facility, Lender [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LineOfCreditFacilityLenderDomain" xml:lang="en-US">Line of Credit Facility, Lender [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="lab_us-gaap_LineOfCreditFacilityLenderDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_GreenwoodCreditUnionMember" xlink:label="loc_alot_GreenwoodCreditUnionMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_GreenwoodCreditUnionMember" xml:lang="en-US">Greenwood Credit Union [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_GreenwoodCreditUnionMember" xml:lang="en-US">Green wood Credit Union [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_GreenwoodCreditUnionMember" xlink:to="lab_alot_GreenwoodCreditUnionMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_GreenwoodCreditUnionMember" xml:lang="en-US">Green wood credit union.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SummaryOfSignificantAccountingPoliciesLineItems" xlink:label="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_SummaryOfSignificantAccountingPoliciesLineItems" xml:lang="en-US">Summary Of Significant Accounting Policies [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_SummaryOfSignificantAccountingPoliciesLineItems" xml:lang="en-US">Summary Of Significant Accounting Policies [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems" xlink:to="lab_alot_SummaryOfSignificantAccountingPoliciesLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_SummaryOfSignificantAccountingPoliciesLineItems" xml:lang="en-US">Summary of significant accounting policies.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashEquivalentsMaturityPeriodDescription" xlink:label="loc_alot_CashEquivalentsMaturityPeriodDescription" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_CashEquivalentsMaturityPeriodDescription" xml:lang="en-US">Cash Equivalents Maturity Period Description</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_CashEquivalentsMaturityPeriodDescription" xml:lang="en-US">Highly liquid investments with an original maturity</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_CashEquivalentsMaturityPeriodDescription" xlink:to="lab_alot_CashEquivalentsMaturityPeriodDescription" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_CashEquivalentsMaturityPeriodDescription" xml:lang="en-US">Cash equivalents maturity period description.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProductsWarrantyPeriod" xlink:label="loc_alot_ProductsWarrantyPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ProductsWarrantyPeriod" xml:lang="en-US">Products Warranty Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_ProductsWarrantyPeriod" xml:lang="en-US">Products warranty period</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ProductsWarrantyPeriod" xlink:to="lab_alot_ProductsWarrantyPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ProductsWarrantyPeriod" xml:lang="en-US">Products warranty period.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xml:lang="en-US">Impairment of Long-Lived Assets Held-for-use</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xml:lang="en-US">Impairment of Long lived assets held for use</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:to="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xml:lang="en-US">Number of common equivalent shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense" xlink:label="loc_us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense" xml:lang="en-US">Assumed Liability for Unpaid Claims and Claims Adjustment Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense" xml:lang="en-US">Liability for self-insured claims</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense" xlink:to="lab_us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashHeldInForeignBankAccounts" xlink:label="loc_alot_CashHeldInForeignBankAccounts" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_CashHeldInForeignBankAccounts" xml:lang="en-US">Cash Held In Foreign Bank Accounts</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_CashHeldInForeignBankAccounts" xml:lang="en-US">Cash of held in foreign bank accounts</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_CashHeldInForeignBankAccounts" xlink:to="lab_alot_CashHeldInForeignBankAccounts" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_CashHeldInForeignBankAccounts" xml:lang="en-US">Cash held in foreign bank accounts.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingExpense" xlink:label="loc_us-gaap_AdvertisingExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdvertisingExpense" xml:lang="en-US">Advertising Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AdvertisingExpense" xml:lang="en-US">Advertising expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdvertisingExpense" xlink:to="lab_us-gaap_AdvertisingExpense" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xml:lang="en-US">Impairment of Intangible Assets (Excluding Goodwill)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xml:lang="en-US">Impairment charges for intangible assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:to="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLoans" xlink:label="loc_us-gaap_ProceedsFromLoans" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProceedsFromLoans" xml:lang="en-US">Proceeds from Loans</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ProceedsFromLoans" xml:lang="en-US">Debt related commitment fees and debt issuance costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromLoans" xlink:to="lab_us-gaap_ProceedsFromLoans" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xml:lang="en-US">Debt Instrument, Face Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xml:lang="en-US">Debt instrument face amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xml:lang="en-US">Principal amount of debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentFaceAmount" xlink:to="lab_us-gaap_DebtInstrumentFaceAmount" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentDecreaseForgiveness" xlink:label="loc_us-gaap_DebtInstrumentDecreaseForgiveness" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentDecreaseForgiveness" xml:lang="en-US">Debt Instrument, Decrease, Forgiveness</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentDecreaseForgiveness" xml:lang="en-US">Amount of PPP loan forgiven</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentDecreaseForgiveness" xlink:to="lab_us-gaap_DebtInstrumentDecreaseForgiveness" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PercentageOfServiceRevenueToTotalRevenue" xlink:label="loc_alot_PercentageOfServiceRevenueToTotalRevenue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_PercentageOfServiceRevenueToTotalRevenue" xml:lang="en-US">Percentage Of Service Revenue To Total Revenue</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_PercentageOfServiceRevenueToTotalRevenue" xml:lang="en-US">Percentage of revenue satisfied for services</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_PercentageOfServiceRevenueToTotalRevenue" xlink:to="lab_alot_PercentageOfServiceRevenueToTotalRevenue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_PercentageOfServiceRevenueToTotalRevenue" xml:lang="en-US">Percentage of service revenue to total revenue.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xml:lang="en-US">Property, Plant and Equipment, Useful Life</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xml:lang="en-US">Estimated useful lives of the assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xml:lang="en-US">Adjustments for New Accounting Pronouncements [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xml:lang="en-US">Adjustments for New Accounting Pronouncements [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xml:lang="en-US">Adjustments for New Accounting Pronouncements [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TypeOfAdoptionMember" xml:lang="en-US">Type of Adoption [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_TypeOfAdoptionMember" xml:lang="en-US">Type of Adoption [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_TypeOfAdoptionMember" xml:lang="en-US">Type of Adoption [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TypeOfAdoptionMember" xlink:to="lab_us-gaap_TypeOfAdoptionMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xml:lang="en-US">Business Acquisition [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xml:lang="en-US">Business Acquisition [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems" xlink:to="lab_us-gaap_BusinessAcquisitionLineItems" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xml:lang="en-US">Identifiable Intangible Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xml:lang="en-US">Inventory</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xml:lang="en-US">Cash</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xml:lang="en-US">Accounts Payable and Other Current Liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xml:lang="en-US">Total Purchase Price</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xml:lang="en-US">Accounts Receivable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" xlink:label="loc_alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Goodwill</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" xml:lang="en-US">Goodwill</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" xlink:to="lab_alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" xml:lang="en-US">Business combination, recognized identifiable assets acquired and liabilities assumed, goodwill.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xml:lang="en-US">Property, Plant and Equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xml:lang="en-US">Business Acquisition [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xml:lang="en-US">Business Acquisition [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAxis" xlink:to="lab_us-gaap_BusinessAcquisitionAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="lab_us-gaap_BusinessAcquisitionAcquireeDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" xml:lang="en-US">Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" xml:lang="en-US">Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TrademarksAndTradeNamesMember" xml:lang="en-US">Trademarks and Trade Names [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TrademarksAndTradeNamesMember" xlink:to="lab_us-gaap_TrademarksAndTradeNamesMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CustomerRelationshipsMember" xml:lang="en-US">Customer Relationships [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerRelationshipsMember" xlink:to="lab_us-gaap_CustomerRelationshipsMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems" xml:lang="en-US">Acquired Indefinite-Lived Intangible Assets [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems" xml:lang="en-US">Acquired Finite-Lived Intangible Assets [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems" xlink:to="lab_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xml:lang="en-US">Acquired Finite-lived Intangible Assets, Weighted Average Useful Life</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xml:lang="en-US">Useful Life (Years)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1" xml:lang="en-US">Finite-Lived Intangible Assets Acquired</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1" xml:lang="en-US">Fair Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:to="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessAcquisitionProFormaInformationTable" xlink:label="loc_alot_BusinessAcquisitionProFormaInformationTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_BusinessAcquisitionProFormaInformationTable" xml:lang="en-US">Business Acquisition Pro Forma Information [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_BusinessAcquisitionProFormaInformationTable" xlink:to="lab_alot_BusinessAcquisitionProFormaInformationTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_BusinessAcquisitionProFormaInformationTable" xml:lang="en-US">Business acquisition pro forma information.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessAcquisitionProFormaInformationLineItems" xlink:label="loc_alot_BusinessAcquisitionProFormaInformationLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_BusinessAcquisitionProFormaInformationLineItems" xml:lang="en-US">Business Acquisition Pro Forma Information [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_BusinessAcquisitionProFormaInformationLineItems" xlink:to="lab_alot_BusinessAcquisitionProFormaInformationLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_BusinessAcquisitionProFormaInformationLineItems" xml:lang="en-US">Business acquisition pro forma information.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessAcquisitionRevenue" xlink:label="loc_alot_BusinessAcquisitionRevenue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_BusinessAcquisitionRevenue" xml:lang="en-US">Business Acquisition Revenue</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_BusinessAcquisitionRevenue" xml:lang="en-US">Revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_BusinessAcquisitionRevenue" xlink:to="lab_alot_BusinessAcquisitionRevenue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_BusinessAcquisitionRevenue" xml:lang="en-US">Business acquisition revenue from date of acquisition.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessAcquisitionEarningBeforeTaxes" xlink:label="loc_alot_BusinessAcquisitionEarningBeforeTaxes" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_BusinessAcquisitionEarningBeforeTaxes" xml:lang="en-US">Business Acquisition Earning Before Taxes</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_BusinessAcquisitionEarningBeforeTaxes" xml:lang="en-US">Earnings before Taxes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_BusinessAcquisitionEarningBeforeTaxes" xlink:to="lab_alot_BusinessAcquisitionEarningBeforeTaxes" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_BusinessAcquisitionEarningBeforeTaxes" xml:lang="en-US">Business acquisition earning before taxes from date of acquisition.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AgreementWithAstroMachineForAssetAcquisitionsMember" xlink:label="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_AgreementWithAstroMachineForAssetAcquisitionsMember" xml:lang="en-US">Agreement With Astro Machine For Asset Acquisitions [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_AgreementWithAstroMachineForAssetAcquisitionsMember" xml:lang="en-US">Agreement With Astro Machine For Asset Acquisitions [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember" xlink:to="lab_alot_AgreementWithAstroMachineForAssetAcquisitionsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_AgreementWithAstroMachineForAssetAcquisitionsMember" xml:lang="en-US">Agreement with astro machine for asset acquisitions.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xml:lang="en-US">Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:to="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CustomerRelatedIntangibleAssetsMember" xml:lang="en-US">Customer-Related Intangible Assets [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CustomerRelatedIntangibleAssetsMember" xml:lang="en-US">Customer Contract Relationships [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:to="lab_us-gaap_CustomerRelatedIntangibleAssetsMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xml:lang="en-US">Acquired Finite-Lived Intangible Assets [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure" xml:lang="en-US">Finite-lived Intangible Assets, Fair Value Disclosure</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure" xml:lang="en-US">Fair Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xml:lang="en-US">Finite-Lived Intangible Asset, Useful Life</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xml:lang="en-US">Useful Life (Years)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xml:lang="en-US">Business Combination, Acquisition Related Costs</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xml:lang="en-US">Business Combination, Acquisition Related Costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:to="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xml:lang="en-US">Business Acquisition, Percentage of Voting Interests Acquired</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xml:lang="en-US">Payments to Acquire Businesses, Gross</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:to="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PurchasePriceIntoAnEscrowAccount" xlink:label="loc_alot_PurchasePriceIntoAnEscrowAccount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_PurchasePriceIntoAnEscrowAccount" xml:lang="en-US">Purchase Price Into an Escrow Account</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_PurchasePriceIntoAnEscrowAccount" xml:lang="en-US">Purchase price into an escrow account</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_PurchasePriceIntoAnEscrowAccount" xlink:to="lab_alot_PurchasePriceIntoAnEscrowAccount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_PurchasePriceIntoAnEscrowAccount" xml:lang="en-US">Purchase price into an escrow account.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireLand" xlink:label="loc_us-gaap_PaymentsToAcquireLand" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PaymentsToAcquireLand" xml:lang="en-US">Payments to Acquire Land</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PaymentsToAcquireLand" xml:lang="en-US">Payments to Acquire Additional Interest in Subsidiaries</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireLand" xlink:to="lab_us-gaap_PaymentsToAcquireLand" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AreaOfLand" xlink:label="loc_us-gaap_AreaOfLand" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AreaOfLand" xml:lang="en-US">Area of Land</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AreaOfLand" xml:lang="en-US">Area of Land</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AreaOfLand" xlink:to="lab_us-gaap_AreaOfLand" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_NumberOfAcresOfLand" xlink:label="loc_alot_NumberOfAcresOfLand" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_NumberOfAcresOfLand" xml:lang="en-US">Number of Acres of land</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_NumberOfAcresOfLand" xml:lang="en-US">Number of Acres of land</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_NumberOfAcresOfLand" xlink:to="lab_alot_NumberOfAcresOfLand" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_NumberOfAcresOfLand" xml:lang="en-US">Number of acres of land.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RoyaltyExpense" xlink:label="loc_us-gaap_RoyaltyExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RoyaltyExpense" xml:lang="en-US">Royalty Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RoyaltyExpense" xml:lang="en-US">Royalty expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RoyaltyExpense" xlink:to="lab_us-gaap_RoyaltyExpense" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent" xlink:label="loc_alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent" xml:lang="en-US">Royalty Guarantees Commitments Amount Non Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent" xml:lang="en-US">Royalty guarantees commitments amount non current</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent" xlink:to="lab_alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent" xml:lang="en-US">Royalty guarantees commitments amount non current.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_FairValueOfIntangibleAssetsMeasurementInput" xlink:label="loc_alot_FairValueOfIntangibleAssetsMeasurementInput" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_FairValueOfIntangibleAssetsMeasurementInput" xml:lang="en-US">Fair Value Of Intangible Assets Measurement Input</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_FairValueOfIntangibleAssetsMeasurementInput" xml:lang="en-US">Fair Value Of Intangible Assets Measurement Input</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_FairValueOfIntangibleAssetsMeasurementInput" xlink:to="lab_alot_FairValueOfIntangibleAssetsMeasurementInput" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_FairValueOfIntangibleAssetsMeasurementInput" xml:lang="en-US">Fair value of intangible assets measurement input.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross" xml:lang="en-US">Payments to Acquire Businesses, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross" xml:lang="en-US">Purchase price of acquisition</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesGross" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesGross" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RoyaltyGuaranteesCommitmentsAmount" xlink:label="loc_us-gaap_RoyaltyGuaranteesCommitmentsAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RoyaltyGuaranteesCommitmentsAmount" xml:lang="en-US">Royalty Guarantees, Commitments, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_RoyaltyGuaranteesCommitmentsAmount" xml:lang="en-US">Royalty guarantee commitement amount</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RoyaltyGuaranteesCommitmentsAmount" xlink:to="lab_us-gaap_RoyaltyGuaranteesCommitmentsAmount" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue" xlink:label="loc_alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue" xml:lang="en-US">Royalty Guarantee Commitement Amount Due Current and Non Current Discounted Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue" xml:lang="en-US">Royalty guarantee commitement due current and non current discounted value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue" xlink:to="lab_alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue" xml:lang="en-US">Royalty guarantee commitement amount due current and non current discounted value.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xml:lang="en-US">Income Statement Location [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xml:lang="en-US">Income Statement Location [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis" xlink:to="lab_us-gaap_IncomeStatementLocationAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xml:lang="en-US">Income Statement Location [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xml:lang="en-US">Income Statement Location [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain" xlink:to="lab_us-gaap_IncomeStatementLocationDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpenseMember" xml:lang="en-US">General and Administrative Expense [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpenseMember" xml:lang="en-US">General and Administrative Expense [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeneralAndAdministrativeExpenseMember" xlink:to="lab_us-gaap_GeneralAndAdministrativeExpenseMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeAxis" xlink:label="loc_us-gaap_MeasurementInputTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_MeasurementInputTypeAxis" xml:lang="en-US">Measurement Input Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MeasurementInputTypeAxis" xlink:to="lab_us-gaap_MeasurementInputTypeAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeDomain" xlink:label="loc_us-gaap_MeasurementInputTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_MeasurementInputTypeDomain" xml:lang="en-US">Measurement Input Type [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MeasurementInputTypeDomain" xlink:to="lab_us-gaap_MeasurementInputTypeDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MeasurementInputRoyaltyRateMember" xlink:label="loc_alot_MeasurementInputRoyaltyRateMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_MeasurementInputRoyaltyRateMember" xml:lang="en-US">Measurement Input Royalty Rate [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_MeasurementInputRoyaltyRateMember" xlink:to="lab_alot_MeasurementInputRoyaltyRateMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_MeasurementInputRoyaltyRateMember" xml:lang="en-US">Measurement input royalty rate.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MeasurementInputCustomerAttritionRateMember" xlink:label="loc_alot_MeasurementInputCustomerAttritionRateMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_MeasurementInputCustomerAttritionRateMember" xml:lang="en-US">Measurement Input Customer Attrition Rate [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_MeasurementInputCustomerAttritionRateMember" xlink:to="lab_alot_MeasurementInputCustomerAttritionRateMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_MeasurementInputCustomerAttritionRateMember" xml:lang="en-US">Measurement input customer attrition rate.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputDiscountRateMember" xlink:label="loc_us-gaap_MeasurementInputDiscountRateMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_MeasurementInputDiscountRateMember" xml:lang="en-US">Measurement Input, Discount Rate [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MeasurementInputDiscountRateMember" xlink:to="lab_us-gaap_MeasurementInputDiscountRateMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BalanceSheetLocationAxis" xml:lang="en-US">Balance Sheet Location [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BalanceSheetLocationAxis" xml:lang="en-US">Balance Sheet Location [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationAxis" xlink:to="lab_us-gaap_BalanceSheetLocationAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BalanceSheetLocationDomain" xml:lang="en-US">Balance Sheet Location [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BalanceSheetLocationDomain" xml:lang="en-US">Balance Sheet Location [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationDomain" xlink:to="lab_us-gaap_BalanceSheetLocationDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_NonCurrentLiabilityMember" xlink:label="loc_alot_NonCurrentLiabilityMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_NonCurrentLiabilityMember" xml:lang="en-US">Non Current Liability [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_NonCurrentLiabilityMember" xlink:to="lab_alot_NonCurrentLiabilityMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_NonCurrentLiabilityMember" xml:lang="en-US">Non current liability.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueAxis" xlink:label="loc_alot_RoyaltyPaymentsDueAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RoyaltyPaymentsDueAxis" xml:lang="en-US">Royalty Payments Due [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RoyaltyPaymentsDueAxis" xlink:to="lab_alot_RoyaltyPaymentsDueAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RoyaltyPaymentsDueAxis" xml:lang="en-US">Royalty payments due.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueDomain" xlink:label="loc_alot_RoyaltyPaymentsDueDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RoyaltyPaymentsDueDomain" xml:lang="en-US">Royalty Payments Due [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RoyaltyPaymentsDueDomain" xlink:to="lab_alot_RoyaltyPaymentsDueDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RoyaltyPaymentsDueDomain" xml:lang="en-US">Royalty payments due.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueInNextTwelveMonthsMember" xlink:label="loc_alot_RoyaltyPaymentsDueInNextTwelveMonthsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RoyaltyPaymentsDueInNextTwelveMonthsMember" xml:lang="en-US">Royalty Payments Due In Next Twelve Months [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RoyaltyPaymentsDueInNextTwelveMonthsMember" xlink:to="lab_alot_RoyaltyPaymentsDueInNextTwelveMonthsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RoyaltyPaymentsDueInNextTwelveMonthsMember" xml:lang="en-US">Royalty payments due in next twelve months.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueYearTwoMember" xlink:label="loc_alot_RoyaltyPaymentsDueYearTwoMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RoyaltyPaymentsDueYearTwoMember" xml:lang="en-US">Royalty Payments Due Year Two [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RoyaltyPaymentsDueYearTwoMember" xlink:to="lab_alot_RoyaltyPaymentsDueYearTwoMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RoyaltyPaymentsDueYearTwoMember" xml:lang="en-US">Royalty payments due year two.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueYearThreeMember" xlink:label="loc_alot_RoyaltyPaymentsDueYearThreeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RoyaltyPaymentsDueYearThreeMember" xml:lang="en-US">Royalty Payments Due Year Three [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RoyaltyPaymentsDueYearThreeMember" xlink:to="lab_alot_RoyaltyPaymentsDueYearThreeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RoyaltyPaymentsDueYearThreeMember" xml:lang="en-US">Royalty payments due year three.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueYearFourMember" xlink:label="loc_alot_RoyaltyPaymentsDueYearFourMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RoyaltyPaymentsDueYearFourMember" xml:lang="en-US">Royalty Payments Due Year Four [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RoyaltyPaymentsDueYearFourMember" xlink:to="lab_alot_RoyaltyPaymentsDueYearFourMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RoyaltyPaymentsDueYearFourMember" xml:lang="en-US">Royalty payments due year four.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueYearFiveMember" xlink:label="loc_alot_RoyaltyPaymentsDueYearFiveMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RoyaltyPaymentsDueYearFiveMember" xml:lang="en-US">Royalty Payments Due Year Five [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RoyaltyPaymentsDueYearFiveMember" xlink:to="lab_alot_RoyaltyPaymentsDueYearFiveMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RoyaltyPaymentsDueYearFiveMember" xml:lang="en-US">Royalty payments due year five.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="loc_us-gaap_DisaggregationOfRevenueAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DisaggregationOfRevenueAbstract" xml:lang="en-US">Disaggregation of Revenue [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueAbstract" xlink:to="lab_us-gaap_DisaggregationOfRevenueAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xml:lang="en-US">Disaggregation of Revenue [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xml:lang="en-US">Disaggregation of Revenue [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable" xlink:to="lab_us-gaap_DisaggregationOfRevenueTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xml:lang="en-US">Disaggregation of Revenue [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xml:lang="en-US">Disaggregation of Revenue [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:to="lab_us-gaap_DisaggregationOfRevenueLineItems" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_StatementGeographicalAxis" xml:lang="en-US">Geographical [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_StatementGeographicalAxis" xml:lang="en-US">Geographical [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementGeographicalAxis" xlink:to="lab_srt_StatementGeographicalAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_SegmentGeographicalDomain" xml:lang="en-US">Geographical [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_SegmentGeographicalDomain" xml:lang="en-US">Geographical [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_SegmentGeographicalDomain" xlink:to="lab_srt_SegmentGeographicalDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EuropeMember" xlink:label="loc_srt_EuropeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_EuropeMember" xml:lang="en-US">Europe [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_EuropeMember" xml:lang="en-US">Europe [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_EuropeMember" xlink:to="lab_srt_EuropeMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_OthersCountriesMember" xlink:label="loc_alot_OthersCountriesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_OthersCountriesMember" xml:lang="en-US">Others Countries [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_OthersCountriesMember" xml:lang="en-US">Other [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_OthersCountriesMember" xlink:to="lab_alot_OthersCountriesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_OthersCountriesMember" xml:lang="en-US">Others Countries [Member]</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AsiaMember" xlink:label="loc_srt_AsiaMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_AsiaMember" xml:lang="en-US">Asia [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_AsiaMember" xml:lang="en-US">Asia [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_AsiaMember" xlink:to="lab_srt_AsiaMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_CA" xlink:label="loc_country_CA" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_country_CA" xml:lang="en-US">CANADA</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_country_CA" xml:lang="en-US">Canada [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_CA" xlink:to="lab_country_CA" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CentralAndSouthAmericaMember" xlink:label="loc_alot_CentralAndSouthAmericaMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_CentralAndSouthAmericaMember" xml:lang="en-US">Central And South America [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_CentralAndSouthAmericaMember" xml:lang="en-US">Central and South America [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_CentralAndSouthAmericaMember" xlink:to="lab_alot_CentralAndSouthAmericaMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_CentralAndSouthAmericaMember" xml:lang="en-US">Central and South America.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="loc_country_US" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_country_US" xml:lang="en-US">UNITED STATES</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_country_US" xml:lang="en-US">United States [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_US" xlink:to="lab_country_US" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ServiceAndOtherMember" xlink:label="loc_alot_ServiceAndOtherMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ServiceAndOtherMember" xml:lang="en-US">Service And Other [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_ServiceAndOtherMember" xml:lang="en-US">Service and Other [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ServiceAndOtherMember" xlink:to="lab_alot_ServiceAndOtherMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ServiceAndOtherMember" xml:lang="en-US">Service and other.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_HardwareProductsMember" xlink:label="loc_alot_HardwareProductsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_HardwareProductsMember" xml:lang="en-US">Hardware Products [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_HardwareProductsMember" xml:lang="en-US">Hardware [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_HardwareProductsMember" xlink:to="lab_alot_HardwareProductsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_HardwareProductsMember" xml:lang="en-US">Hardware products.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SuppliesMember" xlink:label="loc_alot_SuppliesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_SuppliesMember" xml:lang="en-US">Supplies [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_SuppliesMember" xml:lang="en-US">Supplies [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_SuppliesMember" xlink:to="lab_alot_SuppliesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_SuppliesMember" xml:lang="en-US">Supplies.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions" xlink:label="loc_alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions" xml:lang="en-US">Contract With Customer Liability Revenue Recognized Including Additions</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions" xml:lang="en-US">Revenue recognized</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions" xlink:to="lab_alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions" xml:lang="en-US">Contract with customer liability revenue recognized including additions.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetNet" xlink:label="loc_us-gaap_ContractWithCustomerAssetNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ContractWithCustomerAssetNet" xml:lang="en-US">Contract with Customer, Asset, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ContractWithCustomerAssetNet" xml:lang="en-US">Contract assets balance</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetNet" xlink:to="lab_us-gaap_ContractWithCustomerAssetNet" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SettlementofContractClaimRevenueRecognized" xlink:label="loc_alot_SettlementofContractClaimRevenueRecognized" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_SettlementofContractClaimRevenueRecognized" xml:lang="en-US">Settlement of Contract Claim Revenue Recognized</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_SettlementofContractClaimRevenueRecognized" xml:lang="en-US">Revenue recognized</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_SettlementofContractClaimRevenueRecognized" xlink:to="lab_alot_SettlementofContractClaimRevenueRecognized" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_SettlementofContractClaimRevenueRecognized" xml:lang="en-US">Settlement of contract claim revenue recognized and definition Amount of revenue recognized as result of settlement of a contract claim related to additional component costs.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostNetCurrent" xlink:label="loc_us-gaap_CapitalizedContractCostNetCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CapitalizedContractCostNetCurrent" xml:lang="en-US">Capitalized Contract Cost, Net, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CapitalizedContractCostNetCurrent" xml:lang="en-US">Deferred incremental direct contract costs reported in other current assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostNetCurrent" xlink:to="lab_us-gaap_CapitalizedContractCostNetCurrent" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining" xlink:label="loc_alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining" xml:lang="en-US">Additional Capitalized Contract Costs Amortization Period Remaining</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining" xml:lang="en-US">Capitalized contract costs additional amounts incurred amortization period</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining" xlink:to="lab_alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining" xml:lang="en-US">Amortization period remaining for additional capitalized contract costs.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" xlink:label="loc_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" xml:lang="en-US">Capitalized Contract Costs Additional Amounts Incurred Amortization Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" xml:lang="en-US">Capitalized contract costs additional amounts incurred amortization period</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" xlink:to="lab_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" xml:lang="en-US">Capitalized contract costs additional amounts incurred amortization period.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xml:lang="en-US">Contract with Customer, Liability, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xml:lang="en-US">Contract liabilities and extended warranties</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="lab_us-gaap_ContractWithCustomerLiabilityCurrent" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CapitalizedContractCostNetLongTermAndShortTerm" xlink:label="loc_alot_CapitalizedContractCostNetLongTermAndShortTerm" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_CapitalizedContractCostNetLongTermAndShortTerm" xml:lang="en-US">Capitalized Contract Cost Net Long Term And Short Term</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_CapitalizedContractCostNetLongTermAndShortTerm" xml:lang="en-US">Capitalized contract cost net long term and short term</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_CapitalizedContractCostNetLongTermAndShortTerm" xlink:to="lab_alot_CapitalizedContractCostNetLongTermAndShortTerm" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_CapitalizedContractCostNetLongTermAndShortTerm" xml:lang="en-US">Capitalized contract cost net long term and short term.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="loc_us-gaap_CapitalizedContractCostNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CapitalizedContractCostNet" xml:lang="en-US">Capitalized Contract Cost, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_CapitalizedContractCostNet" xml:lang="en-US">Additional contract costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostNet" xlink:to="lab_us-gaap_CapitalizedContractCostNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostAmortization" xlink:label="loc_us-gaap_CapitalizedContractCostAmortization" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CapitalizedContractCostAmortization" xml:lang="en-US">Capitalized Contract Cost, Amortization</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CapitalizedContractCostAmortization" xml:lang="en-US">Amortization of incremental direct costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostAmortization" xlink:to="lab_us-gaap_CapitalizedContractCostAmortization" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SettlementOfContractClaim" xlink:label="loc_alot_SettlementOfContractClaim" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_SettlementOfContractClaim" xml:lang="en-US">Settlement Of Contract Claim</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_SettlementOfContractClaim" xml:lang="en-US">Contract with customer liability</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_SettlementOfContractClaim" xlink:to="lab_alot_SettlementOfContractClaim" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_SettlementOfContractClaim" xml:lang="en-US">Settlement of contract claim and settlement of contract claim as a result of increased component costs.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingEstimateByTypeAxis" xlink:label="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ChangeInAccountingEstimateByTypeAxis" xml:lang="en-US">Change in Accounting Estimate by Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis" xlink:to="lab_us-gaap_ChangeInAccountingEstimateByTypeAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingEstimateTypeDomain" xlink:label="loc_us-gaap_ChangeInAccountingEstimateTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ChangeInAccountingEstimateTypeDomain" xml:lang="en-US">Change in Accounting Estimate, Type [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ChangeInAccountingEstimateTypeDomain" xlink:to="lab_us-gaap_ChangeInAccountingEstimateTypeDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember" xlink:label="loc_us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember" xml:lang="en-US">Change in Accounting Method Accounted for as Change in Estimate [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember" xml:lang="en-US">Change in Accounting Method Accounted for as Change in Estimate [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember" xlink:to="lab_us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementClassOfStockAxis" xml:lang="en-US">Class of Stock [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_StatementClassOfStockAxis" xml:lang="en-US">Class of Stock [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementClassOfStockAxis" xlink:to="lab_us-gaap_StatementClassOfStockAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ClassOfStockDomain" xml:lang="en-US">Class of Stock [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ClassOfStockDomain" xml:lang="en-US">Class of Stock [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockDomain" xlink:to="lab_us-gaap_ClassOfStockDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_MajorCustomersAxis" xml:lang="en-US">Customer [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MajorCustomersAxis" xlink:to="lab_srt_MajorCustomersAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_NameOfMajorCustomerDomain" xml:lang="en-US">Customer [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_NameOfMajorCustomerDomain" xlink:to="lab_srt_NameOfMajorCustomerDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AerospaceCustomerMember" xlink:label="loc_alot_AerospaceCustomerMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_AerospaceCustomerMember" xml:lang="en-US">Aerospace Customer [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_AerospaceCustomerMember" xlink:to="lab_alot_AerospaceCustomerMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_AerospaceCustomerMember" xml:lang="en-US">Aerospace customer.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerContractsMember" xlink:label="loc_us-gaap_CustomerContractsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CustomerContractsMember" xml:lang="en-US">Customer Contracts [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CustomerContractsMember" xml:lang="en-US">Customer Contract Relationships [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_CustomerContractsMember" xml:lang="en-US">Customer Contracts [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerContractsMember" xlink:to="lab_us-gaap_CustomerContractsMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ExistingTechnologyMember" xlink:label="loc_alot_ExistingTechnologyMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ExistingTechnologyMember" xml:lang="en-US">Existing Technology [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_ExistingTechnologyMember" xml:lang="en-US">Existing Technology [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ExistingTechnologyMember" xlink:to="lab_alot_ExistingTechnologyMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ExistingTechnologyMember" xml:lang="en-US">Existing technology.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DistributorRelationsMember" xlink:label="loc_alot_DistributorRelationsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DistributorRelationsMember" xml:lang="en-US">Distributor Relations [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DistributorRelationsMember" xml:lang="en-US">Distributor Relations [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DistributorRelationsMember" xlink:to="lab_alot_DistributorRelationsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DistributorRelationsMember" xml:lang="en-US">Distributor relations.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember" xlink:label="loc_us-gaap_TrademarksMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TrademarksMember" xml:lang="en-US">Trademarks [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_TrademarksMember" xml:lang="en-US">Trademarks [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TrademarksMember" xlink:to="lab_us-gaap_TrademarksMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaap_TypeOfArrangementAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TypeOfArrangementAxis" xml:lang="en-US">Type of Arrangement and Non-arrangement Transactions [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_TypeOfArrangementAxis" xml:lang="en-US">Type of Arrangement and Non-arrangement Transactions [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_TypeOfArrangementAxis" xml:lang="en-US">Type of Arrangement and Non-arrangement Transactions [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TypeOfArrangementAxis" xlink:to="lab_us-gaap_TypeOfArrangementAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ArrangementsAndNonarrangementTransactionsMember" xml:lang="en-US">Arrangements and Non-arrangement Transactions [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ArrangementsAndNonarrangementTransactionsMember" xml:lang="en-US">Arrangements and Non-arrangement Transactions [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ArrangementsAndNonarrangementTransactionsMember" xml:lang="en-US">Arrangements and Non-arrangement Transactions [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="lab_us-gaap_ArrangementsAndNonarrangementTransactionsMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_HoneywellAssetPurchaseAndLicenseAgreementMember" xlink:label="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_HoneywellAssetPurchaseAndLicenseAgreementMember" xml:lang="en-US">Honeywell Asset Purchase and License Agreement [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_HoneywellAssetPurchaseAndLicenseAgreementMember" xml:lang="en-US">Honeywell Asset Purchase and License Agreement [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_HoneywellAssetPurchaseAndLicenseAgreementMember" xml:lang="en-US">Honeywell Asset Purchase and License Agreement [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember" xlink:to="lab_alot_HoneywellAssetPurchaseAndLicenseAgreementMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_HoneywellAssetPurchaseAndLicenseAgreementMember" xml:lang="en-US">Honeywell Asset Purchase and License Agreement [Member]</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TrojanlabelApSMember" xlink:label="loc_alot_TrojanlabelApSMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_TrojanlabelApSMember" xml:lang="en-US">Trojanlabel ApS [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_TrojanlabelApSMember" xml:lang="en-US">TrojanLabel ApS [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_TrojanlabelApSMember" xlink:to="lab_alot_TrojanlabelApSMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_TrojanlabelApSMember" xml:lang="en-US">TrojanLabel ApS.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MiltopeCorporationMember" xlink:label="loc_alot_MiltopeCorporationMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_MiltopeCorporationMember" xml:lang="en-US">Miltope Corporation [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_MiltopeCorporationMember" xml:lang="en-US">Miltope [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_MiltopeCorporationMember" xlink:to="lab_alot_MiltopeCorporationMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_MiltopeCorporationMember" xml:lang="en-US">Miltope Corporation [Member]</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RuggedInformationTechnologyEquipmentCorporationMember" xlink:label="loc_alot_RuggedInformationTechnologyEquipmentCorporationMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RuggedInformationTechnologyEquipmentCorporationMember" xml:lang="en-US">Rugged Information Technology Equipment Corporation [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_RuggedInformationTechnologyEquipmentCorporationMember" xml:lang="en-US">RITEC [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RuggedInformationTechnologyEquipmentCorporationMember" xlink:to="lab_alot_RuggedInformationTechnologyEquipmentCorporationMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RuggedInformationTechnologyEquipmentCorporationMember" xml:lang="en-US">Rugged Information Technology Equipment Corporation [Member]</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" xlink:label="loc_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" xml:lang="en-US">Finite Lived Intangible Assets Foreign Currency Translation Adjustment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" xml:lang="en-US">Currency Translation Adjustment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" xlink:to="lab_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" xml:lang="en-US">Finite-lived&#8203; intangible assets foreign currency translation adjustment.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xml:lang="en-US">Finite-Lived Intangible Assets, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xml:lang="en-US">Gross Carrying Amount</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsGross" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xml:lang="en-US">Accumulated Amortization</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwillAbstract" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwillAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwillAbstract" xml:lang="en-US">Impairment of Intangible Assets (Excluding Goodwill) [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwillAbstract" xlink:to="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwillAbstract" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IntangibleAssetsTable" xlink:label="loc_alot_IntangibleAssetsTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_IntangibleAssetsTable" xml:lang="en-US">Intangible Assets [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_IntangibleAssetsTable" xlink:to="lab_alot_IntangibleAssetsTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_IntangibleAssetsTable" xml:lang="en-US">Intangible Assets [Table]</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IntangibleAssetsLineItems" xlink:label="loc_alot_IntangibleAssetsLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_IntangibleAssetsLineItems" xml:lang="en-US">Intangible Assets [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_IntangibleAssetsLineItems" xlink:to="lab_alot_IntangibleAssetsLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_IntangibleAssetsLineItems" xml:lang="en-US">Intangible Assets [Line Items]</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsFinitelived" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsFinitelived" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsFinitelived" xml:lang="en-US">Impairment of Intangible Assets, Finite-lived</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsFinitelived" xml:lang="en-US">Impairments of intangible assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfIntangibleAssetsFinitelived" xlink:to="lab_us-gaap_ImpairmentOfIntangibleAssetsFinitelived" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xml:lang="en-US">Finite-Lived Intangible Assets, Remaining Amortization Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xml:lang="en-US">Finite lived intangible assets remaining useful Life</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xml:lang="en-US">Amortization of Intangible Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xml:lang="en-US">Amortization expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfIntangibleAssets" xlink:to="lab_us-gaap_AmortizationOfIntangibleAssets" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod" xlink:label="loc_alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod" xml:lang="en-US">Decrease In Amortization Expense Due to Change of Amortization Method</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod" xml:lang="en-US">Decrease In amortization expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod" xlink:to="lab_alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod" xml:lang="en-US">Decrease In amortization expense</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization" xlink:label="loc_alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization" xml:lang="en-US">Increase In Net Income Due To Change In The Method Of Amortization</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization" xml:lang="en-US">Increase in net income due to change of amortization method</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization" xlink:to="lab_alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization" xml:lang="en-US">Increase in net income due to change in the method of amortization.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsAmortizationPeriodMember" xlink:label="loc_us-gaap_IntangibleAssetsAmortizationPeriodMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IntangibleAssetsAmortizationPeriodMember" xml:lang="en-US">Intangible Assets, Amortization Period [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IntangibleAssetsAmortizationPeriodMember" xml:lang="en-US">Intangible Assets, Amortization Period [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsAmortizationPeriodMember" xlink:to="lab_us-gaap_IntangibleAssetsAmortizationPeriodMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Five</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xml:lang="en-US">2028</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Three</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xml:lang="en-US">2026</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Two</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xml:lang="en-US">2025</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Four</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xml:lang="en-US">2027</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xml:lang="en-US">2024</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_InventoryDemonstrationEquipment" xlink:label="loc_alot_InventoryDemonstrationEquipment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_InventoryDemonstrationEquipment" xml:lang="en-US">Inventory Demonstration Equipment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_InventoryDemonstrationEquipment" xml:lang="en-US">Inventory demonstration equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_InventoryDemonstrationEquipment" xlink:to="lab_alot_InventoryDemonstrationEquipment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_InventoryDemonstrationEquipment" xml:lang="en-US">Inventory demonstration equipment.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserves" xlink:label="loc_us-gaap_InventoryValuationReserves" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryValuationReserves" xml:lang="en-US">Inventory Valuation Reserves</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_InventoryValuationReserves" xml:lang="en-US">Inventory Reserve</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryValuationReserves" xlink:to="lab_us-gaap_InventoryValuationReserves" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsAndSupplies" xlink:label="loc_us-gaap_InventoryRawMaterialsAndSupplies" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryRawMaterialsAndSupplies" xml:lang="en-US">Inventory, Raw Materials and Supplies, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InventoryRawMaterialsAndSupplies" xml:lang="en-US">Materials and Supplies</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryRawMaterialsAndSupplies" xlink:to="lab_us-gaap_InventoryRawMaterialsAndSupplies" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcess" xlink:label="loc_us-gaap_InventoryWorkInProcess" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryWorkInProcess" xml:lang="en-US">Inventory, Work in Process, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InventoryWorkInProcess" xml:lang="en-US">Work-in-Progress</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryWorkInProcess" xlink:to="lab_us-gaap_InventoryWorkInProcess" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoods" xlink:label="loc_us-gaap_InventoryFinishedGoods" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryFinishedGoods" xml:lang="en-US">Inventory, Finished Goods, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InventoryFinishedGoods" xml:lang="en-US">Finished Goods</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryFinishedGoods" xlink:to="lab_us-gaap_InventoryFinishedGoods" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryGross" xlink:label="loc_us-gaap_InventoryGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryGross" xml:lang="en-US">Inventory, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_InventoryGross" xml:lang="en-US">Inventory, Gross</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryGross" xlink:to="lab_us-gaap_InventoryGross" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xml:lang="en-US">Property, Plant and Equipment, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xml:lang="en-US">Gross Property, Plant and Equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentGross" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareGross" xml:lang="en-US">Capitalized Computer Software, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareGross" xml:lang="en-US">Computer Equipment and Software</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedComputerSoftwareGross" xlink:to="lab_us-gaap_CapitalizedComputerSoftwareGross" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="loc_us-gaap_MachineryAndEquipmentGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_MachineryAndEquipmentGross" xml:lang="en-US">Machinery and Equipment, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_MachineryAndEquipmentGross" xml:lang="en-US">Machinery and Equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MachineryAndEquipmentGross" xlink:to="lab_us-gaap_MachineryAndEquipmentGross" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandAndLandImprovements" xlink:label="loc_us-gaap_LandAndLandImprovements" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LandAndLandImprovements" xml:lang="en-US">Land and Land Improvements</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LandAndLandImprovements" xml:lang="en-US">Land and Land Improvements</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LandAndLandImprovements" xlink:to="lab_us-gaap_LandAndLandImprovements" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xml:lang="en-US">Accumulated Depreciation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BuildingsAndImprovementsGross" xml:lang="en-US">Buildings and Improvements, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BuildingsAndImprovementsGross" xml:lang="en-US">Buildings and Leasehold Improvements</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BuildingsAndImprovementsGross" xlink:to="lab_us-gaap_BuildingsAndImprovementsGross" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_Depreciation" xml:lang="en-US">Depreciation</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_Depreciation" xml:lang="en-US">Depreciation expense on property, plant and equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Depreciation" xlink:to="lab_us-gaap_Depreciation" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedComputerSoftwareImpairments1" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareImpairments1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareImpairments1" xml:lang="en-US">Capitalized Computer Software, Impairments</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedComputerSoftwareImpairments1" xlink:to="lab_us-gaap_CapitalizedComputerSoftwareImpairments1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpenseMember" xlink:label="loc_us-gaap_NonoperatingIncomeExpenseMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NonoperatingIncomeExpenseMember" xml:lang="en-US">Nonoperating Income (Expense) [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseMember" xlink:to="lab_us-gaap_NonoperatingIncomeExpenseMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xml:lang="en-US">Product Warranty Accrual, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xml:lang="en-US">Warranty</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xml:lang="en-US">Balance, beginning of the year</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xml:lang="en-US">Balance, end of the year</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:to="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xml:lang="en-US">Other Accrued Liabilities, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xml:lang="en-US">Other Accrued Expenses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_OtherAccruedLiabilitiesCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="loc_us-gaap_AccruedProfessionalFeesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccruedProfessionalFeesCurrent" xml:lang="en-US">Accrued Professional Fees, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccruedProfessionalFeesCurrent" xml:lang="en-US">Professional Fees</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedProfessionalFeesCurrent" xlink:to="lab_us-gaap_AccruedProfessionalFeesCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xml:lang="en-US">Operating Lease, Liability, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xml:lang="en-US">Lease Liability</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xml:lang="en-US">Other Accrued Expenses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedPayrollAndSalesTaxesCurrent" xlink:label="loc_alot_AccruedPayrollAndSalesTaxesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_AccruedPayrollAndSalesTaxesCurrent" xml:lang="en-US">Accrued Payroll and Sales Taxes Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_AccruedPayrollAndSalesTaxesCurrent" xml:lang="en-US">Accrued Property &amp; Sales Tax</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_AccruedPayrollAndSalesTaxesCurrent" xlink:to="lab_alot_AccruedPayrollAndSalesTaxesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_AccruedPayrollAndSalesTaxesCurrent" xml:lang="en-US">Accrued payroll and sales taxes current.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedSalesCommissionCurrent" xlink:label="loc_us-gaap_AccruedSalesCommissionCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccruedSalesCommissionCurrent" xml:lang="en-US">Accrued Sales Commission, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccruedSalesCommissionCurrent" xml:lang="en-US">Dealer Commissions</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedSalesCommissionCurrent" xlink:to="lab_us-gaap_AccruedSalesCommissionCurrent" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedStockHolderRelationFees" xlink:label="loc_alot_AccruedStockHolderRelationFees" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_AccruedStockHolderRelationFees" xml:lang="en-US">Accrued Stock Holder Relation Fees</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_AccruedStockHolderRelationFees" xml:lang="en-US">Stockholder Relation Fees</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_AccruedStockHolderRelationFees" xlink:to="lab_alot_AccruedStockHolderRelationFees" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_AccruedStockHolderRelationFees" xml:lang="en-US">Accrued stock holder relation fees.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xml:lang="en-US">Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedFreight" xlink:label="loc_alot_AccruedFreight" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_AccruedFreight" xml:lang="en-US">Accrued Freight</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_AccruedFreight" xml:lang="en-US">Freight</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_AccruedFreight" xlink:to="lab_alot_AccruedFreight" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_AccruedFreight" xml:lang="en-US">Accrued freight.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable" xlink:label="loc_us-gaap_DebtInstrumentTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentTable" xml:lang="en-US">Schedule of Long-term Debt Instruments [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentTable" xml:lang="en-US">Schedule of Long-term Debt Instruments [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentTable" xlink:to="lab_us-gaap_DebtInstrumentTable" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember" xlink:label="loc_alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember" xml:lang="en-US">Term Loan Due August Fourth Two Thousand and Twenty Seven [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember" xml:lang="en-US">Term Loan Due August 4, 2027 [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember" xlink:to="lab_alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember" xml:lang="en-US">Term loan due august fourth two thousand and twenty seven.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember" xlink:label="loc_alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember" xml:lang="en-US">Term Loan Due September Thirty Two Thousand And Twenty Five [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember" xml:lang="en-US">Term Loan Due September 30, 2025 [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember" xlink:to="lab_alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember" xml:lang="en-US">Term loan due september thirty two thousand and twenty five.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="loc_us-gaap_DebtInstrumentLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xml:lang="en-US">Debt Instrument [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xml:lang="en-US">Debt Instrument [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentLineItems" xlink:to="lab_us-gaap_DebtInstrumentLineItems" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentCarryingAmount" xml:lang="en-US">Long-term Debt, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentCarryingAmount" xml:lang="en-US">USD Term Loan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentCarryingAmount" xlink:to="lab_us-gaap_DebtInstrumentCarryingAmount" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="loc_us-gaap_DeferredFinanceCostsNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredFinanceCostsNet" xml:lang="en-US">Debt Issuance Costs, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_DeferredFinanceCostsNet" xml:lang="en-US">Debt Issuance Costs, net of accumulated amortization</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredFinanceCostsNet" xlink:to="lab_us-gaap_DeferredFinanceCostsNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xml:lang="en-US">Long-term Debt, Maturities, Repayments of Principal in Year Three</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xml:lang="en-US">Fiscal 2026</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xml:lang="en-US">Long-term Debt, Maturities, Repayments of Principal in Year Four</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xml:lang="en-US">Fiscal 2027</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaap_LongTermDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermDebt" xml:lang="en-US">Long-term Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_LongTermDebt" xml:lang="en-US">Long-term Debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebt" xlink:to="lab_us-gaap_LongTermDebt" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xml:lang="en-US">Long-term Debt, Maturities, Repayments of Principal in Next Twelve Months</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xml:lang="en-US">Fiscal 2024</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xml:lang="en-US">Long-term Debt, Maturities, Repayments of Principal in Year Five</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xml:lang="en-US">Fiscal 2028</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xml:lang="en-US">Long-term Debt, Maturities, Repayments of Principal in Year Two</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xml:lang="en-US">Fiscal 2025</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TermLoanMember" xlink:label="loc_alot_TermLoanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_TermLoanMember" xml:lang="en-US">Term Loan [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_TermLoanMember" xml:lang="en-US">Term Loan [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_TermLoanMember" xlink:to="lab_alot_TermLoanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_TermLoanMember" xml:lang="en-US">Term loan.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis" xlink:label="loc_us-gaap_VariableRateAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_VariableRateAxis" xml:lang="en-US">Variable Rate [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_VariableRateAxis" xml:lang="en-US">Variable Rate [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateAxis" xlink:to="lab_us-gaap_VariableRateAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain" xlink:label="loc_us-gaap_VariableRateDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_VariableRateDomain" xml:lang="en-US">Variable Rate [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_VariableRateDomain" xml:lang="en-US">Variable Rate [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateDomain" xlink:to="lab_us-gaap_VariableRateDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FederalFundsEffectiveSwapRateMember" xlink:label="loc_us-gaap_FederalFundsEffectiveSwapRateMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FederalFundsEffectiveSwapRateMember" xml:lang="en-US">Federal Funds Effective Swap Rate [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_FederalFundsEffectiveSwapRateMember" xml:lang="en-US">Federal Funds Effective Swap Rate [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FederalFundsEffectiveSwapRateMember" xlink:to="lab_us-gaap_FederalFundsEffectiveSwapRateMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xml:lang="en-US">London Interbank Offered Rate (LIBOR) [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xml:lang="en-US">LIBOR [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:to="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember" xml:lang="en-US">Revolving Credit Facility [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember" xml:lang="en-US">Revolving Credit Facility [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevolvingCreditFacilityMember" xlink:to="lab_us-gaap_RevolvingCreditFacilityMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BankOfAmericaMember" xlink:label="loc_alot_BankOfAmericaMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_BankOfAmericaMember" xml:lang="en-US">Bank Of America [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_BankOfAmericaMember" xml:lang="en-US">Bank of America, N.A. [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_BankOfAmericaMember" xlink:to="lab_alot_BankOfAmericaMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_BankOfAmericaMember" xml:lang="en-US">Bank of america.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherExpenseMember" xlink:label="loc_us-gaap_OtherExpenseMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherExpenseMember" xml:lang="en-US">Other Expense [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherExpenseMember" xlink:to="lab_us-gaap_OtherExpenseMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCredit" xlink:label="loc_us-gaap_LineOfCredit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LineOfCredit" xml:lang="en-US">Long-term Line of Credit</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LineOfCredit" xml:lang="en-US">Revolving loan outstanding</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCredit" xlink:to="lab_us-gaap_LineOfCredit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpenseDebt" xlink:label="loc_us-gaap_InterestExpenseDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InterestExpenseDebt" xml:lang="en-US">Interest Expense, Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_InterestExpenseDebt" xml:lang="en-US">Interest Expense, Debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestExpenseDebt" xlink:to="lab_us-gaap_InterestExpenseDebt" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/presentationGuidance" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xml:lang="en-US">Maximum borrowing capacity</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate" xlink:label="loc_us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate" xml:lang="en-US">Debt Instrument, Interest Rate, Basis for Effective Rate</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate" xml:lang="en-US">Variable interest rate</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate" xlink:to="lab_us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xml:lang="en-US">Line of Credit Facility, Remaining Borrowing Capacity</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xml:lang="en-US">Line of Credit Facility, Remaining Borrowing Capacity</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xml:lang="en-US">Line of Credit Facility, Commitment Fee Percentage</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xml:lang="en-US">Commitment fee rate</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:to="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xml:lang="en-US">Debt Instrument, Basis Spread on Variable Rate</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xml:lang="en-US">Interest rate</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCommitmentFeeAmount" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeeAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LineOfCreditFacilityCommitmentFeeAmount" xml:lang="en-US">Line of Credit Facility, Commitment Fee Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LineOfCreditFacilityCommitmentFeeAmount" xml:lang="en-US">Line of Credit Facility, Commitment Fee Amount</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityCommitmentFeeAmount" xlink:to="lab_us-gaap_LineOfCreditFacilityCommitmentFeeAmount" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DebtInstrumentAdditionalBasisSpread" xlink:label="loc_alot_DebtInstrumentAdditionalBasisSpread" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DebtInstrumentAdditionalBasisSpread" xml:lang="en-US">Debt Instrument Additional Basis Spread</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_DebtInstrumentAdditionalBasisSpread" xml:lang="en-US">Percentage added to variable rate</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DebtInstrumentAdditionalBasisSpread" xlink:to="lab_alot_DebtInstrumentAdditionalBasisSpread" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DebtInstrumentAdditionalBasisSpread" xml:lang="en-US">Debt instrument additional basis spread.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLongTermLinesOfCredit" xlink:label="loc_us-gaap_ProceedsFromLongTermLinesOfCredit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProceedsFromLongTermLinesOfCredit" xml:lang="en-US">Proceeds from Long-Term Lines of Credit</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ProceedsFromLongTermLinesOfCredit" xml:lang="en-US">Proceeds from long term line of credit</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromLongTermLinesOfCredit" xlink:to="lab_us-gaap_ProceedsFromLongTermLinesOfCredit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtWeightedAverageInterestRateOverTime" xlink:label="loc_us-gaap_LongTermDebtWeightedAverageInterestRateOverTime" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermDebtWeightedAverageInterestRateOverTime" xml:lang="en-US">Long-Term Debt, Weighted Average Interest Rate, over Time</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LongTermDebtWeightedAverageInterestRateOverTime" xml:lang="en-US">Long term debt weighted average interest rate over a period of time</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtWeightedAverageInterestRateOverTime" xlink:to="lab_us-gaap_LongTermDebtWeightedAverageInterestRateOverTime" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:label="loc_us-gaap_DebtInstrumentPeriodicPaymentPrincipal" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xml:lang="en-US">Debt Instrument, Periodic Payment, Principal</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xml:lang="en-US">Debt Instrument, principal Periodic payment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:to="lab_us-gaap_DebtInstrumentPeriodicPaymentPrincipal" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOneAxis" xlink:label="loc_alot_DetailsOneAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DetailsOneAxis" xml:lang="en-US">Details One [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DetailsOneAxis" xlink:to="lab_alot_DetailsOneAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DetailsOneAxis" xml:lang="en-US">Details One [Axis].</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOneDomain" xlink:label="loc_alot_DetailsOneDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DetailsOneDomain" xml:lang="en-US">Details One [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DetailsOneDomain" xlink:to="lab_alot_DetailsOneDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DetailsOneDomain" xml:lang="en-US">Details One [Domain].</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AdditionalTermLoanAvailedMember" xlink:label="loc_alot_AdditionalTermLoanAvailedMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_AdditionalTermLoanAvailedMember" xml:lang="en-US">Additional Term Loan Availed [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_AdditionalTermLoanAvailedMember" xml:lang="en-US">Additional Term Loan Availed [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_AdditionalTermLoanAvailedMember" xlink:to="lab_alot_AdditionalTermLoanAvailedMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_AdditionalTermLoanAvailedMember" xml:lang="en-US">Additional term loan availed.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsAxis" xlink:label="loc_alot_DetailsAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DetailsAxis" xml:lang="en-US">Details [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DetailsAxis" xlink:to="lab_alot_DetailsAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DetailsAxis" xml:lang="en-US">Details [Axis].</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsDomain" xlink:label="loc_alot_DetailsDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DetailsDomain" xml:lang="en-US">Details [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DetailsDomain" xlink:to="lab_alot_DetailsDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DetailsDomain" xml:lang="en-US">Details [Domain].</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BeforeAmendmentToTheCreditAgreementMember" xlink:label="loc_alot_BeforeAmendmentToTheCreditAgreementMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_BeforeAmendmentToTheCreditAgreementMember" xml:lang="en-US">Before Amendment To The Credit Agreement [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_BeforeAmendmentToTheCreditAgreementMember" xml:lang="en-US">Before Amendment To The Credit Agreement [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_BeforeAmendmentToTheCreditAgreementMember" xlink:to="lab_alot_BeforeAmendmentToTheCreditAgreementMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_BeforeAmendmentToTheCreditAgreementMember" xml:lang="en-US">Before amendment to the credit agreement.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CreditAgreementAxis" xlink:label="loc_alot_CreditAgreementAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_CreditAgreementAxis" xml:lang="en-US">Credit Agreement [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_CreditAgreementAxis" xlink:to="lab_alot_CreditAgreementAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_CreditAgreementAxis" xml:lang="en-US">Credit Agreement</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CreditAgreementDomain" xlink:label="loc_alot_CreditAgreementDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_CreditAgreementDomain" xml:lang="en-US">Credit Agreement [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_CreditAgreementDomain" xlink:to="lab_alot_CreditAgreementDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_CreditAgreementDomain" xml:lang="en-US">Credit Agreement</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SecondAmendmentCreditAgreementMember" xlink:label="loc_alot_SecondAmendmentCreditAgreementMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_SecondAmendmentCreditAgreementMember" xml:lang="en-US">Second Amendment Credit Agreement [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_SecondAmendmentCreditAgreementMember" xml:lang="en-US">Second Amendment Credit Agreement [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_SecondAmendmentCreditAgreementMember" xlink:to="lab_alot_SecondAmendmentCreditAgreementMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_SecondAmendmentCreditAgreementMember" xml:lang="en-US">Second amendment credit agreement.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis" xlink:label="loc_srt_StatementScenarioAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_StatementScenarioAxis" xml:lang="en-US">Scenario [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_srt_StatementScenarioAxis" xml:lang="en-US">Scenario [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementScenarioAxis" xlink:to="lab_srt_StatementScenarioAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srt_ScenarioUnspecifiedDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_ScenarioUnspecifiedDomain" xml:lang="en-US">Scenario [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_srt_ScenarioUnspecifiedDomain" xml:lang="en-US">Scenario [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ScenarioUnspecifiedDomain" xlink:to="lab_srt_ScenarioUnspecifiedDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xml:lang="en-US">Subsequent Event Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeAxis" xlink:to="lab_us-gaap_SubsequentEventTypeAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xml:lang="en-US">Subsequent Event Type [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeDomain" xlink:to="lab_us-gaap_SubsequentEventTypeDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPaymentTerms" xlink:label="loc_us-gaap_DebtInstrumentPaymentTerms" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentPaymentTerms" xml:lang="en-US">Debt Instrument, Payment Terms</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentPaymentTerms" xml:lang="en-US">Loan, payment terms</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentPaymentTerms" xlink:to="lab_us-gaap_DebtInstrumentPaymentTerms" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="loc_us-gaap_DebtInstrumentMaturityDate" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentMaturityDate" xml:lang="en-US">Debt Instrument, Maturity Date</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentMaturityDate" xml:lang="en-US">Loan, maturity date</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentMaturityDate" xlink:to="lab_us-gaap_DebtInstrumentMaturityDate" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xml:lang="en-US">Loan, interest rate</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DerivativeInstrumentRiskAxis" xml:lang="en-US">Derivative Instrument [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DerivativeInstrumentRiskAxis" xml:lang="en-US">Derivative Instrument [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis" xlink:to="lab_us-gaap_DerivativeInstrumentRiskAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DerivativeContractTypeDomain" xml:lang="en-US">Derivative Contract [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DerivativeContractTypeDomain" xml:lang="en-US">Derivative Contract [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeContractTypeDomain" xlink:to="lab_us-gaap_DerivativeContractTypeDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CrossCurrencyInterestRateContractMember" xlink:label="loc_us-gaap_CrossCurrencyInterestRateContractMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CrossCurrencyInterestRateContractMember" xml:lang="en-US">Cross Currency Interest Rate Contract [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CrossCurrencyInterestRateContractMember" xml:lang="en-US">Cross Currency Interest Rate Contract [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CrossCurrencyInterestRateContractMember" xlink:to="lab_us-gaap_CrossCurrencyInterestRateContractMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xml:lang="en-US">Derivative Instruments, Gain (Loss) Reclassified from Accumulated OCI into Income, Effective Portion, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xml:lang="en-US">Amount of Gain Reclassified from Accumulated OCI into Income (Expense)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xml:lang="en-US">Amount of Gain (Loss) Reclassified from Accumulated OCI into Income</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax" xml:lang="en-US">Other Comprehensive Income (Loss), Derivative, Excluded Component, Increase (Decrease), before Adjustments, after Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax" xml:lang="en-US">Interest Rate Swap Termination</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashPaidTerminationOfSwaps" xlink:label="loc_alot_CashPaidTerminationOfSwaps" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_CashPaidTerminationOfSwaps" xml:lang="en-US">Cash Paid Termination Of Swaps</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_CashPaidTerminationOfSwaps" xml:lang="en-US">Cash paid termination of swaps</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_CashPaidTerminationOfSwaps" xlink:to="lab_alot_CashPaidTerminationOfSwaps" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_CashPaidTerminationOfSwaps" xml:lang="en-US">Cash paid termination of swaps.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xml:lang="en-US">Hedging Relationship [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xml:lang="en-US">Hedging Relationship [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_HedgingRelationshipDomain" xml:lang="en-US">Hedging Relationship [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_HedgingRelationshipDomain" xml:lang="en-US">Hedging Relationship [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_HedgingRelationshipDomain" xml:lang="en-US">Hedging Relationship [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingRelationshipDomain" xlink:to="lab_us-gaap_HedgingRelationshipDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashFlowHedgingMember" xlink:label="loc_us-gaap_CashFlowHedgingMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CashFlowHedgingMember" xml:lang="en-US">Cash Flow Hedging [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_CashFlowHedgingMember" xml:lang="en-US">Cash Flow Hedging [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashFlowHedgingMember" xlink:to="lab_us-gaap_CashFlowHedgingMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" xml:lang="en-US">Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification and Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" xml:lang="en-US">Amount of Gain (Loss) Recognized in OCI on Derivative</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI" xlink:label="loc_us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI" xml:lang="en-US">Derivative Instruments, Income Statement Location of Gain (Loss) Reclassified from Accumulated OCI</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI" xml:lang="en-US">Location of Gain Reclassified from Accumulated OCI into Income (Expense)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI" xlink:to="lab_us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashFlowHedgeMember" xlink:label="loc_alot_CashFlowHedgeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_CashFlowHedgeMember" xml:lang="en-US">Cash Flow Hedge [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_CashFlowHedgeMember" xml:lang="en-US">Cash Flow Hedge [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_CashFlowHedgeMember" xlink:to="lab_alot_CashFlowHedgeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_CashFlowHedgeMember" xml:lang="en-US">Cash flow hedge.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditDisclosureTable" xlink:label="loc_alot_EmployeeRetentionCreditDisclosureTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_EmployeeRetentionCreditDisclosureTable" xml:lang="en-US">Employee Retention Credit Disclosure [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureTable" xlink:to="lab_alot_EmployeeRetentionCreditDisclosureTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_EmployeeRetentionCreditDisclosureTable" xml:lang="en-US">Employee retention credit disclosure [Table ].</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:label="loc_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xml:lang="en-US">Prepaid Expenses and Other Current Assets [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xml:lang="en-US">Prepaid Expenses and Other Current Assets [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:to="lab_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SellingAndMarketingExpenseMember" xml:lang="en-US">Selling and Marketing Expense [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SellingAndMarketingExpenseMember" xml:lang="en-US">Selling and Marketing Expense [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingAndMarketingExpenseMember" xlink:to="lab_us-gaap_SellingAndMarketingExpenseMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xml:lang="en-US">Research and Development Expense [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpenseMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CostOfSalesMember" xml:lang="en-US">Cost of Sales [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CostOfSalesMember" xml:lang="en-US">Cost of Sales [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfSalesMember" xlink:to="lab_us-gaap_CostOfSalesMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditDisclosureLineItems" xlink:label="loc_alot_EmployeeRetentionCreditDisclosureLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_EmployeeRetentionCreditDisclosureLineItems" xml:lang="en-US">Employee Retention Credit Disclosure [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems" xlink:to="lab_alot_EmployeeRetentionCreditDisclosureLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_EmployeeRetentionCreditDisclosureLineItems" xml:lang="en-US">Employee retention credit disclosure [Line item].</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter" xlink:label="loc_alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter" xml:lang="en-US">Threshold Qualified Wages Per Employee Per Calendar Quarter</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter" xml:lang="en-US">Threshold qualified wages per employee per calendar quarter</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter" xlink:to="lab_alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter" xml:lang="en-US">Threshold qualified wages per employee per calendar quarter.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCredit" xlink:label="loc_alot_EmployeeRetentionCredit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_EmployeeRetentionCredit" xml:lang="en-US">Employee Retention Credit</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_EmployeeRetentionCredit" xml:lang="en-US">Employee retention credit</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_EmployeeRetentionCredit" xlink:to="lab_alot_EmployeeRetentionCredit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_EmployeeRetentionCredit" xml:lang="en-US">Employee retention credit.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter" xlink:label="loc_alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter" xml:lang="en-US">Maximum Threshold Employee Retention Credit Per Employee Per Calendar Quarter</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter" xml:lang="en-US">Maximum threshold employee retention credit per employee per calendar quarter</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter" xlink:to="lab_alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter" xml:lang="en-US">Maximum threshold employee retention credit per employee per calendar quarter.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit" xlink:label="loc_alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit" xml:lang="en-US">Percentage of Reduction of Gross Receipts to Qualify for Employee Retention Credit</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit" xml:lang="en-US">Percentage of reduction of gross Receipts to qualify for employee retention credit</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit" xlink:to="lab_alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit" xml:lang="en-US">Percentage of reduction of gross Receipts to qualify for employee retention credit.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceivableSellingAndMarketing" xlink:label="loc_alot_EmployeeRetentionCreditReceivableSellingAndMarketing" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_EmployeeRetentionCreditReceivableSellingAndMarketing" xml:lang="en-US">Employee Retention Credit Receivable Selling and Marketing</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_EmployeeRetentionCreditReceivableSellingAndMarketing" xml:lang="en-US">Employee Retention Credit Receivable - selling and marketing</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_EmployeeRetentionCreditReceivableSellingAndMarketing" xlink:to="lab_alot_EmployeeRetentionCreditReceivableSellingAndMarketing" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_EmployeeRetentionCreditReceivableSellingAndMarketing" xml:lang="en-US">Amount of refundable payroll taxes to be recognized as a reduction of selling and marketing expense related to the Employee Retention Credit granted under the CARES act.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses" xlink:label="loc_alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses" xml:lang="en-US">Employee Retention Credit Receivable - general and administrative expenses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses" xlink:to="lab_alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses" xml:lang="en-US">Amount of refundable payroll taxes to be recognized as a reduction of general and administrative expenses related to the Employee Retention Credit granted under the CARES act.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceivableResearchAndDevelopment" xlink:label="loc_alot_EmployeeRetentionCreditReceivableResearchAndDevelopment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_EmployeeRetentionCreditReceivableResearchAndDevelopment" xml:lang="en-US">Employee Retention Credit Receivable Research and Development</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_EmployeeRetentionCreditReceivableResearchAndDevelopment" xml:lang="en-US">Employee Retention Credit Receivable - research and development</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_EmployeeRetentionCreditReceivableResearchAndDevelopment" xlink:to="lab_alot_EmployeeRetentionCreditReceivableResearchAndDevelopment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_EmployeeRetentionCreditReceivableResearchAndDevelopment" xml:lang="en-US">Employee Retention Credit Receivable - Research and Development.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceivables" xlink:label="loc_alot_EmployeeRetentionCreditReceivables" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_EmployeeRetentionCreditReceivables" xml:lang="en-US">Employee Retention Credit Receivables</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_EmployeeRetentionCreditReceivables" xml:lang="en-US">Employee retention credit receivables</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_EmployeeRetentionCreditReceivables" xlink:to="lab_alot_EmployeeRetentionCreditReceivables" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_EmployeeRetentionCreditReceivables" xml:lang="en-US">Amount of refundable payroll taxes received.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceived" xlink:label="loc_alot_EmployeeRetentionCreditReceived" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_EmployeeRetentionCreditReceived" xml:lang="en-US">Employee Retention Credit Received</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_EmployeeRetentionCreditReceived" xml:lang="en-US">Employee retention credit received</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_EmployeeRetentionCreditReceived" xlink:to="lab_alot_EmployeeRetentionCreditReceived" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_EmployeeRetentionCreditReceived" xml:lang="en-US">Amount of ERC refundable payroll taxes received.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages" xlink:label="loc_alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages" xml:lang="en-US">Percentage of Refundable Tax Credit can be Claimed on Qualified Wages</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages" xml:lang="en-US">Percentage of refundable tax credit can be claimed of qualified wages</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages" xlink:to="lab_alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages" xml:lang="en-US">Percentage of refundable tax credit can be claimed of qualified wages.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnusualOrInfrequentItemAxis" xlink:label="loc_us-gaap_UnusualOrInfrequentItemAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_UnusualOrInfrequentItemAxis" xml:lang="en-US">Unusual or Infrequent Item, or Both [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnusualOrInfrequentItemAxis" xlink:to="lab_us-gaap_UnusualOrInfrequentItemAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnusualOrInfrequentItemDomain" xlink:label="loc_us-gaap_UnusualOrInfrequentItemDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_UnusualOrInfrequentItemDomain" xml:lang="en-US">Unusual or Infrequent Item, or Both [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnusualOrInfrequentItemDomain" xlink:to="lab_us-gaap_UnusualOrInfrequentItemDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CaresActMember" xlink:label="loc_alot_CaresActMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_CaresActMember" xml:lang="en-US">Cares Act [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_CaresActMember" xml:lang="en-US">Cares Act [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_CaresActMember" xlink:to="lab_alot_CaresActMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PeriodAxis" xlink:label="loc_alot_PeriodAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_PeriodAxis" xml:lang="en-US">Period [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_PeriodAxis" xlink:to="lab_alot_PeriodAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_PeriodAxis" xml:lang="en-US">Period.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PeriodDomain" xlink:label="loc_alot_PeriodDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_PeriodDomain" xml:lang="en-US">Period [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_PeriodDomain" xlink:to="lab_alot_PeriodDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_PeriodDomain" xml:lang="en-US">Period.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ExcessRoyaltyPayments" xlink:label="loc_alot_ExcessRoyaltyPayments" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ExcessRoyaltyPayments" xml:lang="en-US">Excess Royalty Payments</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ExcessRoyaltyPayments" xlink:to="lab_alot_ExcessRoyaltyPayments" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ExcessRoyaltyPayments" xml:lang="en-US">Amount of royalty expense paid in excess of guaranteed minimum payments.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PaymentTermPeriod" xlink:label="loc_alot_PaymentTermPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_PaymentTermPeriod" xml:lang="en-US">Payment Term Period</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_PaymentTermPeriod" xlink:to="lab_alot_PaymentTermPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_PaymentTermPeriod" xml:lang="en-US">Payment term period.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MinimumRoyaltyPaymentObligation" xlink:label="loc_alot_MinimumRoyaltyPaymentObligation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_MinimumRoyaltyPaymentObligation" xml:lang="en-US">Minimum Royalty Payment Obligation</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_MinimumRoyaltyPaymentObligation" xml:lang="en-US">Minimum Royalty Payment Obligation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_MinimumRoyaltyPaymentObligation" xlink:to="lab_alot_MinimumRoyaltyPaymentObligation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_MinimumRoyaltyPaymentObligation" xml:lang="en-US">Minimum Royalty Payment Obligation.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_GuaranteedMinimumRoyaltyPayments" xlink:label="loc_alot_GuaranteedMinimumRoyaltyPayments" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_GuaranteedMinimumRoyaltyPayments" xml:lang="en-US">Guaranteed Minimum Royalty Payments</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_GuaranteedMinimumRoyaltyPayments" xlink:to="lab_alot_GuaranteedMinimumRoyaltyPayments" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_GuaranteedMinimumRoyaltyPayments" xml:lang="en-US">Total Amount paid to date on the Guaranteed Minimum Royalty Obligation.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_OperatingLeasesAbstract" xlink:label="loc_alot_OperatingLeasesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_OperatingLeasesAbstract" xml:lang="en-US">Operating Leases [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_OperatingLeasesAbstract" xml:lang="en-US">Operating Leases [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_OperatingLeasesAbstract" xlink:to="lab_alot_OperatingLeasesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseExpense" xlink:label="loc_us-gaap_OperatingLeaseExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeaseExpense" xml:lang="en-US">Operating Lease, Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OperatingLeaseExpense" xml:lang="en-US">Operating Lease Costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseExpense" xlink:to="lab_us-gaap_OperatingLeaseExpense" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Four</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xml:lang="en-US">2027</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Five</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xml:lang="en-US">2028</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, after Year Five</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xml:lang="en-US">Thereafter</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xml:lang="en-US">Less: Imputed Interest</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaap_OperatingLeaseLiability" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeaseLiability" xml:lang="en-US">Operating Lease, Liability</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OperatingLeaseLiability" xml:lang="en-US">Total Lease Liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiability" xlink:to="lab_us-gaap_OperatingLeaseLiability" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Two</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xml:lang="en-US">2025</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xml:lang="en-US">Total Lease Payments</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Three</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xml:lang="en-US">2026</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year One</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xml:lang="en-US">2024</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract" xlink:label="loc_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract" xml:lang="en-US">Cash paid for amounts included in the measurement of lease liabilities [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract" xml:lang="en-US">Cash paid for amounts included in the measurement of lease liabilities [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract" xlink:to="lab_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments" xlink:label="loc_us-gaap_OperatingLeasePayments" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeasePayments" xml:lang="en-US">Operating Lease, Payments</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OperatingLeasePayments" xml:lang="en-US">Cash paid for operating lease liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasePayments" xlink:to="lab_us-gaap_OperatingLeasePayments" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RegulatedOperationsAbstract" xlink:label="loc_us-gaap_RegulatedOperationsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RegulatedOperationsAbstract" xml:lang="en-US">Regulated Operations [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RegulatedOperationsAbstract" xlink:to="lab_us-gaap_RegulatedOperationsAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCapitalizationEquityTable" xlink:label="loc_us-gaap_ScheduleOfCapitalizationEquityTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfCapitalizationEquityTable" xml:lang="en-US">Schedule of Capitalization, Equity [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfCapitalizationEquityTable" xml:lang="en-US">Schedule of Capitalization, Equity [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityTable" xlink:to="lab_us-gaap_ScheduleOfCapitalizationEquityTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccumulatedTranslationAdjustmentMember" xml:lang="en-US">Accumulated Foreign Currency Adjustment Attributable to Parent [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccumulatedTranslationAdjustmentMember" xml:lang="en-US">Foreign Currency Translation Adjustments [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedTranslationAdjustmentMember" xlink:to="lab_us-gaap_AccumulatedTranslationAdjustmentMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:label="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xml:lang="en-US">Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xml:lang="en-US">Net Unrealized Gain/(Loss) on Cash Flow Hedges [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:to="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCapitalizationEquityLineItems" xlink:label="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfCapitalizationEquityLineItems" xml:lang="en-US">Schedule of Capitalization, Equity [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfCapitalizationEquityLineItems" xml:lang="en-US">Schedule of Capitalization, Equity [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems" xlink:to="lab_us-gaap_ScheduleOfCapitalizationEquityLineItems" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" xlink:label="loc_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" xml:lang="en-US">Unrealized gain loss on termination of interest rate cash flow hedges pre tax accumulated other comprehensive income loss</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" xml:lang="en-US">Cross-Currency Interest Rate Swap Termination</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" xlink:to="lab_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" xml:lang="en-US">Unrealized gain loss on termination of interest rate cash flow hedges pre tax accumulated other comprehensive income loss.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xml:lang="en-US">Other Comprehensive Income (Loss), before Reclassifications, Net of Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xml:lang="en-US">Other Comprehensive Income (Loss) before reclassification</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:label="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xml:lang="en-US">Reclassification from Accumulated Other Comprehensive Income, Current Period, Net of Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xml:lang="en-US">Amounts reclassified from AOCL to Earnings</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:to="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfStockByClassTable" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfStockByClassTable" xml:lang="en-US">Schedule of Stock by Class [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfStockByClassTable" xml:lang="en-US">Schedule of Stock by Class [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable" xlink:to="lab_us-gaap_ScheduleOfStockByClassTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareRepurchaseProgramAxis" xlink:label="loc_us-gaap_ShareRepurchaseProgramAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareRepurchaseProgramAxis" xml:lang="en-US">Share Repurchase Program [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareRepurchaseProgramAxis" xml:lang="en-US">Share Repurchase Program [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareRepurchaseProgramAxis" xlink:to="lab_us-gaap_ShareRepurchaseProgramAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareRepurchaseProgramDomain" xlink:label="loc_us-gaap_ShareRepurchaseProgramDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareRepurchaseProgramDomain" xml:lang="en-US">Share Repurchase Program [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareRepurchaseProgramDomain" xml:lang="en-US">Share Repurchase Program [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain" xlink:to="lab_us-gaap_ShareRepurchaseProgramDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockLineItems" xlink:label="loc_us-gaap_ClassOfStockLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ClassOfStockLineItems" xml:lang="en-US">Class of Stock [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ClassOfStockLineItems" xml:lang="en-US">Class of Stock [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockLineItems" xlink:to="lab_us-gaap_ClassOfStockLineItems" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" xlink:label="loc_alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" xml:lang="en-US">Stock Delivered During Period Shares Stock Options Exercise, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" xml:lang="en-US">Company shares given to employees, value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" xlink:to="lab_alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" xml:lang="en-US">Dollar value of stock delivered by employers to satisfy the exercise price for stock options exercised and restricted stock vested.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_StockDeliveredDuringPeriodSharesStockOptionsExercise" xlink:label="loc_alot_StockDeliveredDuringPeriodSharesStockOptionsExercise" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_StockDeliveredDuringPeriodSharesStockOptionsExercise" xml:lang="en-US">Stock Delivered During Period Shares Stock Options Exercise</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_StockDeliveredDuringPeriodSharesStockOptionsExercise" xml:lang="en-US">Company shares given to employees, shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_StockDeliveredDuringPeriodSharesStockOptionsExercise" xlink:to="lab_alot_StockDeliveredDuringPeriodSharesStockOptionsExercise" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_StockDeliveredDuringPeriodSharesStockOptionsExercise" xml:lang="en-US">Number of shares of stock delivered by employers to satisfy the exercise price for stock options exercised and restricted stock vested.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_TitleOfIndividualAxis" xml:lang="en-US">Title of Individual [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_TitleOfIndividualAxis" xml:lang="en-US">Title of Individual [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_TitleOfIndividualAxis" xlink:to="lab_srt_TitleOfIndividualAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain" xml:lang="en-US">Title of Individual [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain" xml:lang="en-US">Relationship to Entity [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AwardTypeAxis" xml:lang="en-US">Award Type [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AwardTypeAxis" xml:lang="en-US">Award Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis" xlink:to="lab_us-gaap_AwardTypeAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xml:lang="en-US">Equity Award [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xml:lang="en-US">Equity Award [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xml:lang="en-US">Employee Stock Option [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xml:lang="en-US">Stock Options [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockOptionMember" xlink:to="lab_us-gaap_EmployeeStockOptionMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PerformanceSharesMember" xlink:label="loc_us-gaap_PerformanceSharesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PerformanceSharesMember" xml:lang="en-US">Performance Shares [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PerformanceSharesMember" xml:lang="en-US">Performance Based RSUs [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PerformanceSharesMember" xlink:to="lab_us-gaap_PerformanceSharesMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember" xlink:label="loc_us-gaap_RestrictedStockMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RestrictedStockMember" xml:lang="en-US">Restricted Stock [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RestrictedStockMember" xml:lang="en-US">RSA [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockMember" xlink:to="lab_us-gaap_RestrictedStockMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:to="lab_us-gaap_RestrictedStockUnitsRSUMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RestrictedStockAwardMember" xlink:label="loc_alot_RestrictedStockAwardMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RestrictedStockAwardMember" xml:lang="en-US">Restricted Stock Award [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RestrictedStockAwardMember" xlink:to="lab_alot_RestrictedStockAwardMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RestrictedStockAwardMember" xml:lang="en-US">Restricted stock award.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaap_PlanNameAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PlanNameAxis" xml:lang="en-US">Plan Name [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PlanNameAxis" xml:lang="en-US">Plan Name [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameAxis" xlink:to="lab_us-gaap_PlanNameAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaap_PlanNameDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PlanNameDomain" xml:lang="en-US">Plan Name [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PlanNameDomain" xml:lang="en-US">Plan Name [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameDomain" xlink:to="lab_us-gaap_PlanNameDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeStockPurchasePlanMember" xlink:label="loc_alot_EmployeeStockPurchasePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_EmployeeStockPurchasePlanMember" xml:lang="en-US">Employee Stock Purchase Plan [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_EmployeeStockPurchasePlanMember" xml:lang="en-US">Employee Stock Purchase Plan [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_EmployeeStockPurchasePlanMember" xlink:to="lab_alot_EmployeeStockPurchasePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_EmployeeStockPurchasePlanMember" xml:lang="en-US">Employee stock purchase plan.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TwoThousandEighteenEquityIncentivePlanMember" xlink:label="loc_alot_TwoThousandEighteenEquityIncentivePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_TwoThousandEighteenEquityIncentivePlanMember" xml:lang="en-US">Two Thousand Eighteen Equity Incentive Plan [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_TwoThousandEighteenEquityIncentivePlanMember" xml:lang="en-US">2018 Equity Incentive Plan [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_TwoThousandEighteenEquityIncentivePlanMember" xlink:to="lab_alot_TwoThousandEighteenEquityIncentivePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_TwoThousandEighteenEquityIncentivePlanMember" xml:lang="en-US">2018 Equity Incentive Plan.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TwoThousandFifteenEquityIncentivePlanMember" xlink:label="loc_alot_TwoThousandFifteenEquityIncentivePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_TwoThousandFifteenEquityIncentivePlanMember" xml:lang="en-US">Two Thousand Fifteen Equity Incentive Plan [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_TwoThousandFifteenEquityIncentivePlanMember" xml:lang="en-US">2015 Equity Incentive Plan [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_TwoThousandFifteenEquityIncentivePlanMember" xlink:to="lab_alot_TwoThousandFifteenEquityIncentivePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_TwoThousandFifteenEquityIncentivePlanMember" xml:lang="en-US">Two Thousand Fifteen Equity Incentive Plan [Member]</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TwoThousandSevenEquityIncentivePlanMember" xlink:label="loc_alot_TwoThousandSevenEquityIncentivePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_TwoThousandSevenEquityIncentivePlanMember" xml:lang="en-US">Two Thousand Seven Equity Incentive Plan [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_TwoThousandSevenEquityIncentivePlanMember" xml:lang="en-US">2007 Equity Incentive Plan [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_TwoThousandSevenEquityIncentivePlanMember" xlink:to="lab_alot_TwoThousandSevenEquityIncentivePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_TwoThousandSevenEquityIncentivePlanMember" xml:lang="en-US">Two Thousand Seven Equity Incentive Plan [Member]</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember" xlink:label="loc_alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember" xml:lang="en-US">Two Thousand And Twenty Two Employee Stock Purchase Plan [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember" xml:lang="en-US">2022 Employee Stock Purchase Plan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember" xlink:to="lab_alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember" xml:lang="en-US">Two thousand and twenty two employee stock purchase plan member.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PriorEmployeeStockPurchasePlanMember" xlink:label="loc_alot_PriorEmployeeStockPurchasePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_PriorEmployeeStockPurchasePlanMember" xml:lang="en-US">Prior Employee Stock Purchase Plan [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_PriorEmployeeStockPurchasePlanMember" xml:lang="en-US">Prior Employee Stock Purchase Plan [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_PriorEmployeeStockPurchasePlanMember" xlink:to="lab_alot_PriorEmployeeStockPurchasePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_PriorEmployeeStockPurchasePlanMember" xml:lang="en-US">Prior employee stock purchase plan member.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTaxStatusAxis" xlink:label="loc_us-gaap_RetirementPlanTaxStatusAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RetirementPlanTaxStatusAxis" xml:lang="en-US">Retirement Plan Tax Status [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RetirementPlanTaxStatusAxis" xml:lang="en-US">Retirement Plan Tax Status [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanTaxStatusAxis" xlink:to="lab_us-gaap_RetirementPlanTaxStatusAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTaxStatusDomain" xlink:label="loc_us-gaap_RetirementPlanTaxStatusDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RetirementPlanTaxStatusDomain" xml:lang="en-US">Retirement Plan Tax Status [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RetirementPlanTaxStatusDomain" xml:lang="en-US">Retirement Plan Tax Status [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanTaxStatusDomain" xlink:to="lab_us-gaap_RetirementPlanTaxStatusDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xml:lang="en-US">Unrecognized compensation expense to be recognized, Weighted average period</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Stock Options</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xml:lang="en-US">Unrecognized compensation expense related to options</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ReservationOfSharesUnderEmployeeStockPurchasePlan" xlink:label="loc_alot_ReservationOfSharesUnderEmployeeStockPurchasePlan" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ReservationOfSharesUnderEmployeeStockPurchasePlan" xml:lang="en-US">Reservation Of Shares Under Employee Stock Purchase Plan</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_ReservationOfSharesUnderEmployeeStockPurchasePlan" xml:lang="en-US">Reservation of shares under Stock Purchase Plan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ReservationOfSharesUnderEmployeeStockPurchasePlan" xlink:to="lab_alot_ReservationOfSharesUnderEmployeeStockPurchasePlan" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ReservationOfSharesUnderEmployeeStockPurchasePlan" xml:lang="en-US">Reservation of shares under employee stock purchase plan.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Share-based Awards Other than Options</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xml:lang="en-US">Unrecognized compensation expense related to RSUs and RSAs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xml:lang="en-US">Aggregate intrinsic value of options exercised</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xml:lang="en-US">Aggregate intrinsic value of option exercised</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xml:lang="en-US">Shares authorized for grant under the Plan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockExpense" xlink:label="loc_us-gaap_RestrictedStockExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RestrictedStockExpense" xml:lang="en-US">Restricted Stock or Unit Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RestrictedStockExpense" xml:lang="en-US">Restricted Stock Awards and Restricted Stock Units</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockExpense" xlink:to="lab_us-gaap_RestrictedStockExpense" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xml:lang="en-US">Shares available for grant under the Plan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xml:lang="en-US">Stock Issued During Period, Shares, Employee Stock Purchase Plans</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xml:lang="en-US">Shares purchase under Employee Stock Purchase Plan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Discount from Market Price, Purchase Date</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate" xml:lang="en-US">Employee Stock Purchase Plan discount rate</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xml:lang="en-US">Number of shares outstanding</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xml:lang="en-US">Beginning balance, Number of Options</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xml:lang="en-US">Ending balance, Number of Options</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xml:lang="en-US">Number of shares outstanding, total</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xml:lang="en-US">Number of unvested shares</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xml:lang="en-US">Beginning balance, Outstanding Restricted Stock Units and Restricted Stock Awards</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xml:lang="en-US">Ending balance, Outstanding Restricted Stock Units and Restricted Stock Awards</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xml:lang="en-US">Number of options granted</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xml:lang="en-US">Granted, Number of Options</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationAbstract" xml:lang="en-US">Share-based Compensation [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract" xlink:to="lab_us-gaap_ShareBasedCompensationAbstract" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeStockPurchasePlanExpense" xlink:label="loc_alot_EmployeeStockPurchasePlanExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_EmployeeStockPurchasePlanExpense" xml:lang="en-US">Employee Stock Purchase Plan Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_EmployeeStockPurchasePlanExpense" xml:lang="en-US">Employee Stock Purchase Plan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_EmployeeStockPurchasePlanExpense" xlink:to="lab_alot_EmployeeStockPurchasePlanExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_EmployeeStockPurchasePlanExpense" xml:lang="en-US">Employee stock purchase plan expense.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockOptionPlanExpense" xlink:label="loc_us-gaap_StockOptionPlanExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockOptionPlanExpense" xml:lang="en-US">Stock or Unit Option Plan Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockOptionPlanExpense" xml:lang="en-US">Stock Options</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockOptionPlanExpense" xlink:to="lab_us-gaap_StockOptionPlanExpense" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xml:lang="en-US">Granted, Weighted-Average Exercise Price Per Share</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xml:lang="en-US">Exercised, Weighted-Average Exercise Price Per Share</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xml:lang="en-US">Ending balance, Weighted-Average Exercise Price Per Share</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xml:lang="en-US">Beginning balance, Weighted-Average Exercise Price Per Share</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xml:lang="en-US">Forfeited, Number of Options</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Expirations in Period, Weighted Average Exercise Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xml:lang="en-US">Cancelled, Weighted-Average Exercise Price Per Share</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Expirations in Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xml:lang="en-US">Canceled, Number of Options</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xml:lang="en-US">Forfeited, Weighted-Average Exercise Price Per Share</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xml:lang="en-US">Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Outstanding Options, Weighted Average Remaining Contractual Term</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xml:lang="en-US">Outstanding Remaining Contractual Life</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:to="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xml:lang="en-US">Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Number of Outstanding Options</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xml:lang="en-US">Outstanding, Number of shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xml:lang="en-US">Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Upper Range Limit</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xml:lang="en-US">Outstanding Range of Exercise prices, Upper Limit</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xml:lang="en-US">Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Outstanding Options, Weighted Average Exercise Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xml:lang="en-US">Outstanding, Weighted Average Exercise Price</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:to="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xml:lang="en-US">Exercisable Remaining Contractual Life</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xml:lang="en-US">Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xml:lang="en-US">Exercisable, Weighted Average Exercise Price</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:to="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xml:lang="en-US">Number of shares exercisable, total</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xml:lang="en-US">Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Lower Range Limit</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xml:lang="en-US">Outstanding Range of Exercise prices, Lower Limit</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xml:lang="en-US">Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Number of Exercisable Options</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xml:lang="en-US">Exercisable, Number of shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xml:lang="en-US">Exercise Price Range [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xml:lang="en-US">Exercise Price Range [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xml:lang="en-US">Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xml:lang="en-US">Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RangeFiveMember" xlink:label="loc_alot_RangeFiveMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RangeFiveMember" xml:lang="en-US">Range Five [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_RangeFiveMember" xml:lang="en-US">$15.01 - $20.00 [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RangeFiveMember" xlink:to="lab_alot_RangeFiveMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RangeFiveMember" xml:lang="en-US">Range five.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RangeFourMember" xlink:label="loc_alot_RangeFourMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RangeFourMember" xml:lang="en-US">Range Four [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_RangeFourMember" xml:lang="en-US">$10.01 - $15.00 [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RangeFourMember" xlink:to="lab_alot_RangeFourMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RangeFourMember" xml:lang="en-US">Range four.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RangeThreeMember" xlink:label="loc_alot_RangeThreeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RangeThreeMember" xml:lang="en-US">Range Three [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_RangeThreeMember" xml:lang="en-US">$5.00 - $10.00 [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RangeThreeMember" xlink:to="lab_alot_RangeThreeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RangeThreeMember" xml:lang="en-US">Range three.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember" xlink:label="loc_alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember" xml:lang="en-US">Restricted Stock Award Preferred Stock Unit And Restricted Stock Unit [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember" xlink:to="lab_alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember" xml:lang="en-US">Restricted stock award preferred stock unit and restricted stock unit member.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xml:lang="en-US">Vested, Restricted Stock Units and Restricted Stock Awards</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xml:lang="en-US">Granted, Restricted Stock Units and Restricted Stock Awards</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xml:lang="en-US">Forfeited, Restricted Stock Units and Restricted Stock Awards</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xml:lang="en-US">Forfeited, Weighted Average Grant Date Fair Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xml:lang="en-US">Ending balance, Weighted Average Grant Date Fair Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xml:lang="en-US">Beginning balance, Weighted Average Grant Date Fair Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xml:lang="en-US">Vested, Weighted Average Grant Date Fair Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xml:lang="en-US">Granted, Weighted Average Grant Date Fair Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Domestic</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xml:lang="en-US">Domestic</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Foreign</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xml:lang="en-US">Foreign</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xml:lang="en-US">Current Income Tax Expense (Benefit), Continuing Operations [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xml:lang="en-US">Current:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefit" xml:lang="en-US">Current Income Tax Expense (Benefit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefit" xml:lang="en-US">Current Income Tax Expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentIncomeTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentForeignTaxExpenseBenefit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CurrentForeignTaxExpenseBenefit" xml:lang="en-US">Current Foreign Tax Expense (Benefit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CurrentForeignTaxExpenseBenefit" xml:lang="en-US">Foreign</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentForeignTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentForeignTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xml:lang="en-US">Current State and Local Tax Expense (Benefit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xml:lang="en-US">State</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CurrentFederalTaxExpenseBenefit" xml:lang="en-US">Current Federal Tax Expense (Benefit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CurrentFederalTaxExpenseBenefit" xml:lang="en-US">Federal</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentFederalTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xml:lang="en-US">Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xml:lang="en-US">Deferred:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xml:lang="en-US">Deferred Federal Income Tax Expense (Benefit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xml:lang="en-US">Federal</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xml:lang="en-US">Deferred Foreign Income Tax Expense (Benefit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xml:lang="en-US">Foreign</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xml:lang="en-US">Deferred State and Local Income Tax Expense (Benefit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xml:lang="en-US">State</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xml:lang="en-US">Deferred Income Tax Expense (Benefit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xml:lang="en-US">Deferred Income Tax Expense Total</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" xlink:label="loc_alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" xml:lang="en-US">Income Tax Reconciliation Global Intangible Low Taxed Income</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" xml:lang="en-US">Global Intangible Low Taxed Income</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" xlink:to="lab_alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" xml:lang="en-US">Income tax reconciliation global intangible low taxed income.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Meals and Entertainment, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xml:lang="en-US">Meals and Entertainment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:to="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" xlink:label="loc_alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" xml:lang="en-US">Income Tax Reconciliation Other Adjustments Statuory Audit</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" xml:lang="en-US">Denmark Statutory Audit</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" xlink:to="lab_alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" xml:lang="en-US">Income Tax Reconciliation Other Adjustments Statuory Audit</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" xlink:label="loc_alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" xml:lang="en-US">Income Tax Reconciliation Other Adjustments Withholding Taxes</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" xml:lang="en-US">Canada Withholding Taxes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" xlink:to="lab_alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" xml:lang="en-US">Income Tax Reconciliation Other Adjustments Withholding Taxes</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-based Payment Arrangement, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xml:lang="en-US">Share Based Compensation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:to="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncomeTaxReconciliationPppLoanForgiveness" xlink:label="loc_alot_IncomeTaxReconciliationPppLoanForgiveness" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_IncomeTaxReconciliationPppLoanForgiveness" xml:lang="en-US">Income Tax Reconciliation PPP Loan Forgiveness</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_IncomeTaxReconciliationPppLoanForgiveness" xml:lang="en-US">PPP Loan Forgiveness</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_IncomeTaxReconciliationPppLoanForgiveness" xlink:to="lab_alot_IncomeTaxReconciliationPppLoanForgiveness" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_IncomeTaxReconciliationPppLoanForgiveness" xml:lang="en-US">Income tax reconciliation ppp loan forgiveness.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes" xlink:label="loc_us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Prior Year Income Taxes, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes" xml:lang="en-US">Return to Provision Adjustment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes" xlink:to="lab_us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsResearch" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCreditsResearch" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCreditsResearch" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Credit, Research, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCreditsResearch" xml:lang="en-US">R&amp;D Credits</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationTaxCreditsResearch" xlink:to="lab_us-gaap_IncomeTaxReconciliationTaxCreditsResearch" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCreditsForeign" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Credit, Foreign, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xml:lang="en-US">Foreign Derived Intangible Income</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:to="lab_us-gaap_IncomeTaxReconciliationTaxCreditsForeign" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xml:lang="en-US">Change in Valuation Allowance</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xml:lang="en-US">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xml:lang="en-US">State Taxes, Net of Federal Tax Effect</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:to="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:label="loc_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xml:lang="en-US">Foreign Rate Differential</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:to="lab_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Other Adjustments, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xml:lang="en-US">Other</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:to="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_Incometaxreconciliationchangeinreserves" xlink:label="loc_alot_Incometaxreconciliationchangeinreserves" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_Incometaxreconciliationchangeinreserves" xml:lang="en-US">IncomeTaxReconciliationChangeInReserves</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_Incometaxreconciliationchangeinreserves" xml:lang="en-US">Change in Reserves Related to ASC 740 Liability</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_Incometaxreconciliationchangeinreserves" xlink:to="lab_alot_Incometaxreconciliationchangeinreserves" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_Incometaxreconciliationchangeinreserves" xml:lang="en-US">Income tax reconciliation change in reserves.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xml:lang="en-US">Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xml:lang="en-US">Income Tax Provision at Statutory Rate</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:to="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xml:lang="en-US">Deferred Tax Assets, Valuation Allowance</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xml:lang="en-US">Valuation Allowance</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xml:lang="en-US">Valuation allowance</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:to="lab_us-gaap_DeferredTaxAssetsValuationAllowance" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComponentsOfDeferredTaxAssetsAbstract" xlink:label="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ComponentsOfDeferredTaxAssetsAbstract" xml:lang="en-US">Components of Deferred Tax Assets [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ComponentsOfDeferredTaxAssetsAbstract" xml:lang="en-US">Deferred Tax Assets:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract" xlink:to="lab_us-gaap_ComponentsOfDeferredTaxAssetsAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-based Compensation Cost</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xml:lang="en-US">Share-Based Compensation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInventory" xlink:label="loc_us-gaap_DeferredTaxAssetsInventory" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAssetsInventory" xml:lang="en-US">Deferred Tax Assets, Inventory</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsInventory" xml:lang="en-US">Inventory</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsInventory" xlink:to="lab_us-gaap_DeferredTaxAssetsInventory" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xml:lang="en-US">Deferred Tax Assets, Tax Credit Carryforwards, Research</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xml:lang="en-US">State R&amp;D Credits</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xml:lang="en-US">Deferred tax assets tax credit carryforwards research</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xml:lang="en-US">Deferred Tax Assets, Operating Loss Carryforwards</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xml:lang="en-US">Net Operating Loss</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xml:lang="en-US">Deferred Tax Assets Operating loss carryforwards</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:to="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="loc_us-gaap_DeferredTaxAssetsOther" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAssetsOther" xml:lang="en-US">Deferred Tax Assets, Other</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsOther" xml:lang="en-US">Other</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsOther" xlink:to="lab_us-gaap_DeferredTaxAssetsOther" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsUnrecognizedTaxBenefits" xlink:label="loc_alot_DeferredTaxAssetsUnrecognizedTaxBenefits" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DeferredTaxAssetsUnrecognizedTaxBenefits" xml:lang="en-US">Deferred Tax Assets Unrecognized Tax Benefits</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DeferredTaxAssetsUnrecognizedTaxBenefits" xml:lang="en-US">Unrecognized State Tax Benefits</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DeferredTaxAssetsUnrecognizedTaxBenefits" xlink:to="lab_alot_DeferredTaxAssetsUnrecognizedTaxBenefits" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DeferredTaxAssetsUnrecognizedTaxBenefits" xml:lang="en-US">Deferred tax assets unrecognized tax benefits.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsDeferredServiceContractRevenue" xlink:label="loc_alot_DeferredTaxAssetsDeferredServiceContractRevenue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DeferredTaxAssetsDeferredServiceContractRevenue" xml:lang="en-US">Deferred Tax Assets Deferred Service Contract Revenue</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DeferredTaxAssetsDeferredServiceContractRevenue" xml:lang="en-US">Deferred Service Contract Revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DeferredTaxAssetsDeferredServiceContractRevenue" xlink:to="lab_alot_DeferredTaxAssetsDeferredServiceContractRevenue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DeferredTaxAssetsDeferredServiceContractRevenue" xml:lang="en-US">Deferred tax assets deferred service contract revenue.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsRoyaltyLiability" xlink:label="loc_alot_DeferredTaxAssetsRoyaltyLiability" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DeferredTaxAssetsRoyaltyLiability" xml:lang="en-US">Deferred Tax Assets, Royalty Liability</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DeferredTaxAssetsRoyaltyLiability" xml:lang="en-US">Honeywell Royalty Liability</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DeferredTaxAssetsRoyaltyLiability" xlink:to="lab_alot_DeferredTaxAssetsRoyaltyLiability" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DeferredTaxAssetsRoyaltyLiability" xml:lang="en-US">Deferred tax assets, royalty liability.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Provision for Loan Losses</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses" xml:lang="en-US">Bad Debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsCapitalization" xlink:label="loc_alot_DeferredTaxAssetsCapitalization" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DeferredTaxAssetsCapitalization" xml:lang="en-US">Deferred Tax Assets Capitalization</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DeferredTaxAssetsCapitalization" xml:lang="en-US">Section 174 Capitalization</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DeferredTaxAssetsCapitalization" xlink:to="lab_alot_DeferredTaxAssetsCapitalization" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DeferredTaxAssetsCapitalization" xml:lang="en-US">Deferred tax assets capitalization.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaap_DeferredTaxAssetsGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAssetsGross" xml:lang="en-US">Deferred Tax Assets, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsGross" xml:lang="en-US">Deferred Tax Assets, Total</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="lab_us-gaap_DeferredTaxAssetsGross" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" xml:lang="en-US">Deferred Tax Assets, Tax Credit Carryforwards, Foreign</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" xml:lang="en-US">Foreign Tax Credit</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" xml:lang="en-US">Foreign tax credit</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" xlink:label="loc_alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" xml:lang="en-US">Deferred Tax Assets Accounting Standard Adjustment Lease Liability</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" xml:lang="en-US">ASU 842 Adjustment &#8211; Lease Liability</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" xlink:to="lab_alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" xml:lang="en-US">Deferred Tax Assets Accounting Standard Adjustment Lease Liability</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsCompensationAccruals" xlink:label="loc_alot_DeferredTaxAssetsCompensationAccruals" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DeferredTaxAssetsCompensationAccruals" xml:lang="en-US">Deferred Tax Assets Compensation Accruals</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DeferredTaxAssetsCompensationAccruals" xml:lang="en-US">Compensation Accrual</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DeferredTaxAssetsCompensationAccruals" xlink:to="lab_alot_DeferredTaxAssetsCompensationAccruals" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DeferredTaxAssetsCompensationAccruals" xml:lang="en-US">Deferred tax assets compensation accruals.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Warranty Reserves</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" xml:lang="en-US">Warranty Reserve</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet" xml:lang="en-US">Deferred Tax Assets, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet" xml:lang="en-US">Net Deferred Tax Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet" xml:lang="en-US">Total Net Deferred Tax Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:to="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract" xlink:label="loc_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract" xml:lang="en-US">Components of Deferred Tax Liabilities [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract" xml:lang="en-US">Deferred Tax Liabilities:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract" xlink:to="lab_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xml:lang="en-US">Deferred Tax Liabilities, Intangible Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xml:lang="en-US">Intangibles</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities" xml:lang="en-US">Deferred Tax Liabilities, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities" xml:lang="en-US">Deferred Tax Liabilities, Total</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilities" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xml:lang="en-US">Deferred Tax Liabilities, Property, Plant and Equipment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xml:lang="en-US">Accumulated Tax Depreciation in Excess of Book Depreciation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesOther" xml:lang="en-US">Deferred Tax Liabilities, Other</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesOther" xml:lang="en-US">Other</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesOther" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesOther" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" xlink:label="loc_alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" xml:lang="en-US">Deferred Tax Liability Accounting Standard Adjustment Lease Liability</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" xml:lang="en-US">ASU 842 Adjustment &#8211; Lease Liability</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" xlink:to="lab_alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" xml:lang="en-US">Deferred Tax Liability Accounting Standard Adjustment Lease Liability</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:label="loc_us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xml:lang="en-US">Components of Deferred Tax Assets and Liabilities [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xml:lang="en-US">Deferred taxes are reflected in the consolidated balance sheet as follows:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:to="lab_us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="loc_us-gaap_DeferredTaxAssetsNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAssetsNet" xml:lang="en-US">Deferred Tax Assets, Net of Valuation Allowance</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxAssetsNet" xml:lang="en-US">Deferred Tax Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsNet" xlink:to="lab_us-gaap_DeferredTaxAssetsNet" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="loc_us-gaap_DeferredTaxLiabilities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxLiabilities" xml:lang="en-US">Deferred Tax Liabilities, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_DeferredTaxLiabilities" xml:lang="en-US">Deferred Tax Liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilities" xlink:to="lab_us-gaap_DeferredTaxLiabilities" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsLiabilitiesGross" xlink:label="loc_alot_DeferredTaxAssetsLiabilitiesGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DeferredTaxAssetsLiabilitiesGross" xml:lang="en-US">Deferred Tax Assets Liabilities Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_alot_DeferredTaxAssetsLiabilitiesGross" xml:lang="en-US">Subtotal</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DeferredTaxAssetsLiabilitiesGross" xlink:to="lab_alot_DeferredTaxAssetsLiabilitiesGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DeferredTaxAssetsLiabilitiesGross" xml:lang="en-US">Deferred tax assets liabilities gross.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncreaseDecreaseInDeferredTaxAssets" xlink:label="loc_alot_IncreaseDecreaseInDeferredTaxAssets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_IncreaseDecreaseInDeferredTaxAssets" xml:lang="en-US">Increase Decrease In Deferred Tax Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_IncreaseDecreaseInDeferredTaxAssets" xml:lang="en-US">Increase decrease in deferred tax assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_IncreaseDecreaseInDeferredTaxAssets" xlink:to="lab_alot_IncreaseDecreaseInDeferredTaxAssets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_IncreaseDecreaseInDeferredTaxAssets" xml:lang="en-US">Increase decrease in deferred tax assets.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xml:lang="en-US">Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xml:lang="en-US">Reductions related to lapse of statutes of limitations</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xml:lang="en-US">Unrecognized tax benefits as a result of the expiration of the statute of limitations</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits" xml:lang="en-US">Unrecognized Tax Benefits</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits" xml:lang="en-US">Balance ,beginning of the year</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits" xml:lang="en-US">Balance, end of the year</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits" xml:lang="en-US">Recognized tax benefits excluding interest and penalties</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefits" xlink:to="lab_us-gaap_UnrecognizedTaxBenefits" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xml:lang="en-US">Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xml:lang="en-US">Increases in current period tax positions</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xml:lang="en-US">Unrecognized Tax Benefits, Increase Resulting from Prior Period Tax Positions</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xml:lang="en-US">Increases in prior period tax positions</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_CN" xlink:label="loc_country_CN" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_country_CN" xml:lang="en-US">CHINA</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_CN" xlink:to="lab_country_CN" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/stpr/2022/stpr-2022.xsd#stpr_DE" xlink:label="loc_stpr_DE" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_stpr_DE" xml:lang="en-US">DELAWARE</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_stpr_DE" xlink:to="lab_stpr_DE" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis" xml:lang="en-US">Income Tax Authority [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis" xlink:to="lab_us-gaap_IncomeTaxAuthorityAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain" xml:lang="en-US">Income Tax Authority [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain" xlink:to="lab_us-gaap_IncomeTaxAuthorityDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticCountryMember" xlink:label="loc_us-gaap_DomesticCountryMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DomesticCountryMember" xml:lang="en-US">Domestic Tax Authority [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DomesticCountryMember" xml:lang="en-US">Federal Tax [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DomesticCountryMember" xlink:to="lab_us-gaap_DomesticCountryMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOfIncomeTaxBenefitAxis" xlink:label="loc_alot_DetailsOfIncomeTaxBenefitAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DetailsOfIncomeTaxBenefitAxis" xml:lang="en-US">Details Of Income Tax Benefit [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DetailsOfIncomeTaxBenefitAxis" xlink:to="lab_alot_DetailsOfIncomeTaxBenefitAxis" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOfIncomeTaxBenefitDomain" xlink:label="loc_alot_DetailsOfIncomeTaxBenefitDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DetailsOfIncomeTaxBenefitDomain" xml:lang="en-US">Details Of Income Tax Benefit [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DetailsOfIncomeTaxBenefitDomain" xlink:to="lab_alot_DetailsOfIncomeTaxBenefitDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AdditionalForeignTaxCreditMember" xlink:label="loc_alot_AdditionalForeignTaxCreditMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_AdditionalForeignTaxCreditMember" xml:lang="en-US">Additional Foreign Tax Credit [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_AdditionalForeignTaxCreditMember" xml:lang="en-US">Additional Foreign Tax Credit [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_AdditionalForeignTaxCreditMember" xlink:to="lab_alot_AdditionalForeignTaxCreditMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TaxCreditsCarryForwardsMember" xlink:label="loc_alot_TaxCreditsCarryForwardsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_TaxCreditsCarryForwardsMember" xml:lang="en-US">Tax Credits Carry Forwards [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_TaxCreditsCarryForwardsMember" xml:lang="en-US">Tax Credits Carry Forwards [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_TaxCreditsCarryForwardsMember" xlink:to="lab_alot_TaxCreditsCarryForwardsMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod" xlink:label="loc_alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod" xml:lang="en-US">Deferred Tax Assets Operating Loss Carryforwards Expiration Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod" xml:lang="en-US">Deferred tax assets operating loss carryforwards expiration period</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod" xlink:to="lab_alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod" xml:lang="en-US">Deferred tax assets operating loss carryforwards expiration period.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignEarningsRepatriated" xlink:label="loc_us-gaap_ForeignEarningsRepatriated" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ForeignEarningsRepatriated" xml:lang="en-US">Foreign Earnings Repatriated</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ForeignEarningsRepatriated" xml:lang="en-US">Deemed repatriated earnings</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignEarningsRepatriated" xlink:to="lab_us-gaap_ForeignEarningsRepatriated" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" xml:lang="en-US">Unrecognized Tax Benefits, Income Tax Penalties and Interest Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" xml:lang="en-US">Recognized (benefit) expense related to interest and penalties</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod" xlink:label="loc_alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod" xml:lang="en-US">Deferred Tax Assets Tax credit Carryforwards Expiration Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod" xml:lang="en-US">Deferred tax assets tax credit carryforwards expiration period</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod" xlink:to="lab_alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod" xml:lang="en-US">Deferred tax assets tax credit carryforwards expiration period.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xml:lang="en-US">Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xml:lang="en-US">Accrued potential interest and penalties</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xml:lang="en-US">Effective tax rate for income from continuing operation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xml:lang="en-US">Segment Reporting Information [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xml:lang="en-US">Segment Reporting Information [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems" xlink:to="lab_us-gaap_SegmentReportingInformationLineItems" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_NumberOfCustomersAccountingForCreditRisk" xlink:label="loc_alot_NumberOfCustomersAccountingForCreditRisk" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_NumberOfCustomersAccountingForCreditRisk" xml:lang="en-US">Number Of Customers Accounting For Credit Risk</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_NumberOfCustomersAccountingForCreditRisk" xml:lang="en-US">Customer accounted for greater than 10% of net sales</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_NumberOfCustomersAccountingForCreditRisk" xlink:to="lab_alot_NumberOfCustomersAccountingForCreditRisk" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_NumberOfCustomersAccountingForCreditRisk" xml:lang="en-US">Number of customers accounting for credit risk.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportableSegments" xlink:label="loc_us-gaap_NumberOfReportableSegments" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NumberOfReportableSegments" xml:lang="en-US">Number of Reportable Segments</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NumberOfReportableSegments" xml:lang="en-US">Number of reporting segments</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfReportableSegments" xlink:to="lab_us-gaap_NumberOfReportableSegments" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xml:lang="en-US">Segments [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xml:lang="en-US">Segments [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:to="lab_us-gaap_StatementBusinessSegmentsAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SegmentDomain" xml:lang="en-US">Segments [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SegmentDomain" xml:lang="en-US">Segments [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentDomain" xlink:to="lab_us-gaap_SegmentDomain" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProductIdentificationMember" xlink:label="loc_alot_ProductIdentificationMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_ProductIdentificationMember" xml:lang="en-US">Product Identification [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_ProductIdentificationMember" xml:lang="en-US">Product Identification [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_ProductIdentificationMember" xlink:to="lab_alot_ProductIdentificationMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_ProductIdentificationMember" xml:lang="en-US">Product identification.</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TestAndMeasurementMember" xlink:label="loc_alot_TestAndMeasurementMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_TestAndMeasurementMember" xml:lang="en-US">Test And Measurement [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_TestAndMeasurementMember" xml:lang="en-US">T&amp;M [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_TestAndMeasurementMember" xlink:to="lab_alot_TestAndMeasurementMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_TestAndMeasurementMember" xml:lang="en-US">Test and measurement.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_ConsolidationItemsAxis" xml:lang="en-US">Consolidation Items [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_ConsolidationItemsAxis" xml:lang="en-US">Consolidation Items [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsAxis" xlink:to="lab_srt_ConsolidationItemsAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_ConsolidationItemsDomain" xml:lang="en-US">Consolidation Items [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_ConsolidationItemsDomain" xml:lang="en-US">Consolidation Items [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsDomain" xlink:to="lab_srt_ConsolidationItemsDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CorporateNonSegmentMember" xml:lang="en-US">Corporate, Non-Segment [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CorporateNonSegmentMember" xml:lang="en-US">Corporate Expenses [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CorporateNonSegmentMember" xlink:to="lab_us-gaap_CorporateNonSegmentMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember" xlink:label="loc_us-gaap_OperatingSegmentsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingSegmentsMember" xml:lang="en-US">Operating Segments [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OperatingSegmentsMember" xml:lang="en-US">Operating Segments [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingSegmentsMember" xlink:to="lab_us-gaap_OperatingSegmentsMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PercentageOfOperatingProfitToNetSales" xlink:label="loc_alot_PercentageOfOperatingProfitToNetSales" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_PercentageOfOperatingProfitToNetSales" xml:lang="en-US">Percentage Of Operating Profit To Net Sales</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_PercentageOfOperatingProfitToNetSales" xml:lang="en-US">Segment Operating Profit % of Net Sales</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_PercentageOfOperatingProfitToNetSales" xlink:to="lab_alot_PercentageOfOperatingProfitToNetSales" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_PercentageOfOperatingProfitToNetSales" xml:lang="en-US">Percentage of operating profit to net sales.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xml:lang="en-US">Schedule of Revenues from External Customers and Long-Lived Assets [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xml:lang="en-US">Schedule of Revenues from External Customers and Long-Lived Assets [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xml:lang="en-US">Revenues from External Customers and Long-Lived Assets [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xml:lang="en-US">Revenues from External Customers and Long-Lived Assets [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:to="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncurrentAssets" xlink:label="loc_us-gaap_NoncurrentAssets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NoncurrentAssets" xml:lang="en-US">Long-Lived Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NoncurrentAssets" xml:lang="en-US">Long-Lived Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NoncurrentAssets" xlink:to="lab_us-gaap_NoncurrentAssets" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_OtherCountriesMember" xlink:label="loc_alot_OtherCountriesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_OtherCountriesMember" xml:lang="en-US">Other Countries [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_OtherCountriesMember" xml:lang="en-US">Other [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_OtherCountriesMember" xlink:to="lab_alot_OtherCountriesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_OtherCountriesMember" xml:lang="en-US">Other countries.</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xml:lang="en-US">Defined Contribution Plan, Employer Discretionary Contribution Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xml:lang="en-US">Contributions paid or accrued amounted</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:to="lab_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProductWarrantiesDisclosuresAbstract" xml:lang="en-US">Product Warranties Disclosures [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:to="lab_us-gaap_ProductWarrantiesDisclosuresAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:label="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xml:lang="en-US">Standard and Extended Product Warranty Accrual, Increase for Warranties Issued</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xml:lang="en-US">Provision for Warranty Expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:to="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualPayments" xlink:label="loc_us-gaap_ProductWarrantyAccrualPayments" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProductWarrantyAccrualPayments" xml:lang="en-US">Standard and Extended Product Warranty Accrual, Decrease for Payments</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_ProductWarrantyAccrualPayments" xml:lang="en-US">Cost of Warranty Repairs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualPayments" xlink:to="lab_us-gaap_ProductWarrantyAccrualPayments" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_Reimbursementreceivedfromvendor" xlink:label="loc_alot_Reimbursementreceivedfromvendor" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_Reimbursementreceivedfromvendor" xml:lang="en-US">ReimbursementReceivedFromVendor</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_alot_Reimbursementreceivedfromvendor" xml:lang="en-US">Reimbursement received from vendor</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_Reimbursementreceivedfromvendor" xlink:to="lab_alot_Reimbursementreceivedfromvendor" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_Reimbursementreceivedfromvendor" xml:lang="en-US">Reimbursement received from vendor</label>
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTable" xlink:label="loc_us-gaap_ConcentrationRiskTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskTable" xml:lang="en-US">Concentration Risk [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskTable" xml:lang="en-US">Concentration Risk [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskTable" xlink:to="lab_us-gaap_ConcentrationRiskTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsTotalMember" xlink:label="loc_us-gaap_CostOfGoodsTotalMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CostOfGoodsTotalMember" xml:lang="en-US">Cost of Goods, Total [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CostOfGoodsTotalMember" xml:lang="en-US">Purchases [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsTotalMember" xlink:to="lab_us-gaap_CostOfGoodsTotalMember" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TradeAccountsPayablesMember" xlink:label="loc_alot_TradeAccountsPayablesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_TradeAccountsPayablesMember" xml:lang="en-US">Trade Accounts Payables [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_TradeAccountsPayablesMember" xml:lang="en-US">Trade Accounts Payables [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_TradeAccountsPayablesMember" xlink:to="lab_alot_TradeAccountsPayablesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_alot_TradeAccountsPayablesMember" xml:lang="en-US">Trade Accounts Payables [Member]</label>
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CustomerMember" xlink:label="loc_alot_CustomerMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_alot_CustomerMember" xml:lang="en-US">Customer [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_alot_CustomerMember" xml:lang="en-US">Customer [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_alot_CustomerMember" xlink:to="lab_alot_CustomerMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplierConcentrationRiskMember" xlink:label="loc_us-gaap_SupplierConcentrationRiskMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SupplierConcentrationRiskMember" xml:lang="en-US">Supplier Concentration Risk [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SupplierConcentrationRiskMember" xml:lang="en-US">Vendor [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SupplierConcentrationRiskMember" xlink:to="lab_us-gaap_SupplierConcentrationRiskMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="loc_us-gaap_ConcentrationRiskLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskLineItems" xml:lang="en-US">Concentration Risk [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskLineItems" xml:lang="en-US">Concentration Risk [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskLineItems" xlink:to="lab_us-gaap_ConcentrationRiskLineItems" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xml:lang="en-US">Concentration Risk, Percentage</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xml:lang="en-US">Concentration Risk, Percentage</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskPercentage1" xlink:to="lab_us-gaap_ConcentrationRiskPercentage1" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract" xml:lang="en-US">Operating Leases, Future Minimum Payments Due, Fiscal Year Maturity [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PurchaseObligation" xlink:label="loc_us-gaap_PurchaseObligation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PurchaseObligation" xml:lang="en-US">Purchase Obligation</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PurchaseObligation" xml:lang="en-US">Purchase obligation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PurchaseObligation" xlink:to="lab_us-gaap_PurchaseObligation" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PurchaseObligationDueInNextTwelveMonths" xlink:label="loc_us-gaap_PurchaseObligationDueInNextTwelveMonths" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PurchaseObligationDueInNextTwelveMonths" xml:lang="en-US">Purchase Obligation, to be Paid, Year One</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PurchaseObligationDueInNextTwelveMonths" xml:lang="en-US">Purchase obligation, to be paid, year one</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PurchaseObligationDueInNextTwelveMonths" xlink:to="lab_us-gaap_PurchaseObligationDueInNextTwelveMonths" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByBalanceSheetGroupingTable" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueByBalanceSheetGroupingTable" xml:lang="en-US">Fair Value, by Balance Sheet Grouping [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FairValueByBalanceSheetGroupingTable" xml:lang="en-US">Fair Value, by Balance Sheet Grouping [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:to="lab_us-gaap_FairValueByBalanceSheetGroupingTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xml:lang="en-US">Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xml:lang="en-US">Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:to="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="loc_us-gaap_DebtLongtermAndShorttermCombinedAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtLongtermAndShorttermCombinedAmount" xml:lang="en-US">Debt, Long-term and Short-term, Combined Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtLongtermAndShorttermCombinedAmount" xml:lang="en-US">Long-Term Debt and Related Current Maturities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:to="lab_us-gaap_DebtLongtermAndShorttermCombinedAmount" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaap_FairValueInputsLevel3Member" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xml:lang="en-US">Fair Value, Inputs, Level 3 [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xml:lang="en-US">Level 3 [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel3Member" xlink:to="lab_us-gaap_FairValueInputsLevel3Member" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByMeasurementBasisAxis" xlink:label="loc_us-gaap_FairValueByMeasurementBasisAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueByMeasurementBasisAxis" xml:lang="en-US">Measurement Basis [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FairValueByMeasurementBasisAxis" xml:lang="en-US">Measurement Basis [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByMeasurementBasisAxis" xlink:to="lab_us-gaap_FairValueByMeasurementBasisAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PortionAtFairValueFairValueDisclosureMember" xlink:label="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PortionAtFairValueFairValueDisclosureMember" xml:lang="en-US">Portion at Fair Value Measurement [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember" xlink:to="lab_us-gaap_PortionAtFairValueFairValueDisclosureMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EstimateOfFairValueFairValueDisclosureMember" xlink:label="loc_us-gaap_EstimateOfFairValueFairValueDisclosureMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EstimateOfFairValueFairValueDisclosureMember" xml:lang="en-US">Estimate of Fair Value Measurement [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_EstimateOfFairValueFairValueDisclosureMember" xml:lang="en-US">Fair Value [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EstimateOfFairValueFairValueDisclosureMember" xlink:to="lab_us-gaap_EstimateOfFairValueFairValueDisclosureMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CarryingReportedAmountFairValueDisclosureMember" xlink:label="loc_us-gaap_CarryingReportedAmountFairValueDisclosureMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CarryingReportedAmountFairValueDisclosureMember" xml:lang="en-US">Reported Value Measurement [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_CarryingReportedAmountFairValueDisclosureMember" xml:lang="en-US">Carrying Value [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CarryingReportedAmountFairValueDisclosureMember" xlink:to="lab_us-gaap_CarryingReportedAmountFairValueDisclosureMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsDisclosureTable" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_ValuationAndQualifyingAccountsDisclosureTable" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_ValuationAndQualifyingAccountsDisclosureTable" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureTable" xlink:to="lab_srt_ValuationAndQualifyingAccountsDisclosureTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDomain" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDomain" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesDomain" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForCreditLossMember" xlink:label="loc_us-gaap_AllowanceForCreditLossMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AllowanceForCreditLossMember" xml:lang="en-US">SEC Schedule, 12-09, Allowance, Credit Loss [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AllowanceForCreditLossMember" xml:lang="en-US">Allowance for Doubtful Accounts [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForCreditLossMember" xlink:to="lab_us-gaap_AllowanceForCreditLossMember" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsDisclosureLineItems" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems" xlink:to="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesBalance" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesBalance" xml:lang="en-US">Balance at Beginning of Year</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesBalance" xml:lang="en-US">Balance at End of Year</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesBalance" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesBalance" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Additions, Charge to Cost and Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xml:lang="en-US">Provision/(Benefit) Charged to Operations</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDeductions" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDeductions" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDeductions" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Deduction</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDeductions" xml:lang="en-US">Deductions</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDeductions" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesDeductions" />
</labelLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>12
<FILENAME>alot-20230131_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by DFIN XBRL Instance Document - http://www.dfinsolutions.com/ - Version R3.0 - on 18-April-2023 [01:16:42] {AM}-->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CoverPage" roleURI="http://astro-med.com/role/CoverPage" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedBalanceSheets" roleURI="http://astro-med.com/role/ConsolidatedBalanceSheets" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedBalanceSheetsParenthetical" roleURI="http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfIncome" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfIncome" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfComprehensiveIncome" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfChangesInShareholdersEquity" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfChangesInShareholdersEquityParenthetical" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquityParenthetical" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConsolidatedStatementsOfCashFlows" roleURI="http://astro-med.com/role/ConsolidatedStatementsOfCashFlows" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#SummaryOfSignificantAccountingPolicies" roleURI="http://astro-med.com/role/SummaryOfSignificantAccountingPolicies" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#Acquisitions" roleURI="http://astro-med.com/role/Acquisitions" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RevenueRecognition" roleURI="http://astro-med.com/role/RevenueRecognition" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IntangibleAssets" roleURI="http://astro-med.com/role/IntangibleAssets" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#Inventories" roleURI="http://astro-med.com/role/Inventories" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PropertyPlantAndEquipment" roleURI="http://astro-med.com/role/PropertyPlantAndEquipment" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccruedExpenses" roleURI="http://astro-med.com/role/AccruedExpenses" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CreditAgreementAndLongTermDebt" roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebt" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PaycheckProtectionProgramLoan" roleURI="http://astro-med.com/role/PaycheckProtectionProgramLoan" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#DerivativeFinancialInstrumentsAndRiskManagement" roleURI="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagement" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#EmployeeRetentionCredit" roleURI="http://astro-med.com/role/EmployeeRetentionCredit" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RoyaltyObligation" roleURI="http://astro-med.com/role/RoyaltyObligation" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#Leases" roleURI="http://astro-med.com/role/Leases" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccumulatedOtherComprehensiveLoss" roleURI="http://astro-med.com/role/AccumulatedOtherComprehensiveLoss" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareholdersEquity" roleURI="http://astro-med.com/role/ShareholdersEquity" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensation" roleURI="http://astro-med.com/role/ShareBasedCompensation" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxes" roleURI="http://astro-med.com/role/IncomeTaxes" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#NatureOfOperationsSegmentReportingAndGeographicalInformation" roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformation" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#EmployeeBenefitPlans" roleURI="http://astro-med.com/role/EmployeeBenefitPlans" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ProductWarrantyLiability" roleURI="http://astro-med.com/role/ProductWarrantyLiability" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConcentrationOfRisk" roleURI="http://astro-med.com/role/ConcentrationOfRisk" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CommitmentsAndContingencies" roleURI="http://astro-med.com/role/CommitmentsAndContingencies" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#FairValueMeasurements" roleURI="http://astro-med.com/role/FairValueMeasurements" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ScheduleIiValuationAndQualifyingAccountsAndReserves" roleURI="http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReserves" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#SummaryOfSignificantAccountingPoliciesPolicies" roleURI="http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsTables" roleURI="http://astro-med.com/role/AcquisitionsTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RevenueRecognitionTables" roleURI="http://astro-med.com/role/RevenueRecognitionTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IntangibleAssetsTables" roleURI="http://astro-med.com/role/IntangibleAssetsTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#InventoriesTables" roleURI="http://astro-med.com/role/InventoriesTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PropertyPlantAndEquipmentTables" roleURI="http://astro-med.com/role/PropertyPlantAndEquipmentTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccruedExpensesTables" roleURI="http://astro-med.com/role/AccruedExpensesTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CreditAgreementAndLongTermDebtTables" roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#DerivativeFinancialInstrumentsAndRiskManagementTables" roleURI="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesTables" roleURI="http://astro-med.com/role/LeasesTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccumulatedOtherComprehensiveLossTables" roleURI="http://astro-med.com/role/AccumulatedOtherComprehensiveLossTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationTables" roleURI="http://astro-med.com/role/ShareBasedCompensationTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesTables" roleURI="http://astro-med.com/role/IncomeTaxesTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#NatureOfOperationsSegmentReportingAndGeographicalInformationTables" roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ProductWarrantyLiabilityTables" roleURI="http://astro-med.com/role/ProductWarrantyLiabilityTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#FairValueMeasurementsTables" roleURI="http://astro-med.com/role/FairValueMeasurementsTables" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail" roleURI="http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail" roleURI="http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail" roleURI="http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail" roleURI="http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail" roleURI="http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AcquisitionsAdditionalInformationDetail" roleURI="http://astro-med.com/role/AcquisitionsAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail" roleURI="http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail" roleURI="http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RevenueRecognitionAdditionalInformationDetail" roleURI="http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail" roleURI="http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IntangibleAssetsAdditionalInformationDetail" roleURI="http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail" roleURI="http://astro-med.com/role/IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#InventoriesAdditionalInformationDetail" roleURI="http://astro-med.com/role/InventoriesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#InventoriesComponentsOfInventoriesDetail" roleURI="http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail" roleURI="http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PropertyPlantAndEquipmentAdditionalInformationDetail" roleURI="http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccruedExpensesSummaryOfAccruedExpensesDetail" roleURI="http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail" roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail" roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CreditAgreementAndLongTermDebtAdditionalInformationDetail" roleURI="http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#PaycheckProtectionProgramLoanAdditionalInformationDetail" roleURI="http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail" roleURI="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail" roleURI="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#EmployeeRetentionCreditAdditionalInformationDetail" roleURI="http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#RoyaltyObligationAdditionalInformationDetail" roleURI="http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesAdditionalInformationDetail" roleURI="http://astro-med.com/role/LeasesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail" roleURI="http://astro-med.com/role/LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesLeaseCostInformationDetail" roleURI="http://astro-med.com/role/LeasesLeaseCostInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesMaturitiesOfLeaseLiabilitiesDetail" roleURI="http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#LeasesSupplementalCashFlowInformationDetail" roleURI="http://astro-med.com/role/LeasesSupplementalCashFlowInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail" roleURI="http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareholdersEquityAdditionalInformationDetail" roleURI="http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationAdditionalInformationDetail" roleURI="http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationShareBasedCompensationExpenseDetail" roleURI="http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail" roleURI="http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationSummaryOfOptionsOutstandingDetail" roleURI="http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail" roleURI="http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail" roleURI="http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail" roleURI="http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail" roleURI="http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail" roleURI="http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesParentheticalDetail" roleURI="http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesParentheticalDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail" roleURI="http://astro-med.com/role/IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#IncomeTaxesAdditionalInformationDetail" roleURI="http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail" roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail" roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail" roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail" roleURI="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#EmployeeBenefitPlansAdditionalInformationDetail" roleURI="http://astro-med.com/role/EmployeeBenefitPlansAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ProductWarrantyLiabilityActivityInProductWarrantyLiabilityDetail" roleURI="http://astro-med.com/role/ProductWarrantyLiabilityActivityInProductWarrantyLiabilityDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ProductWarrantyLiabilityAdditionalInformationDetail" roleURI="http://astro-med.com/role/ProductWarrantyLiabilityAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ConcentrationOfRiskAdditionalInformationDetail" roleURI="http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#CommitmentsAndContingenciesAdditionalInformationDetail" roleURI="http://astro-med.com/role/CommitmentsAndContingenciesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail" roleURI="http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail" />
<roleRef xlink:type="simple" xlink:href="alot-20230131.xsd#ScheduleIiValuationAndQualifyingAccountsAndReservesDetail" roleURI="http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail" />
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/CoverPage">
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract" xlink:label="loc_dei_CoverAbstract_187796" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType" xlink:label="loc_dei_DocumentType_187801" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_DocumentType_187801" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag" xlink:label="loc_dei_AmendmentFlag_187819" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_AmendmentFlag_187819" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_187827" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_DocumentPeriodEndDate_187827" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_dei_DocumentFiscalYearFocus_187828" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_DocumentFiscalYearFocus_187828" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_dei_DocumentFiscalPeriodFocus_187829" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_DocumentFiscalPeriodFocus_187829" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName" xlink:label="loc_dei_EntityRegistrantName_187844" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityRegistrantName_187844" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey" xlink:label="loc_dei_EntityCentralIndexKey_187845" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityCentralIndexKey_187845" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_dei_CurrentFiscalYearEndDate_187852" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_CurrentFiscalYearEndDate_187852" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_dei_EntityVoluntaryFilers_657934" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityVoluntaryFilers_657934" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_dei_EntityCurrentReportingStatus_187856" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityCurrentReportingStatus_187856" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_dei_EntityInteractiveDataCurrent_187808" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityInteractiveDataCurrent_187808" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer_655665" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityWellKnownSeasonedIssuer_655665" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory" xlink:label="loc_dei_EntityFilerCategory_187858" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityFilerCategory_187858" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol" xlink:label="loc_dei_TradingSymbol_475894" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_TradingSymbol_475894" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany" xlink:label="loc_dei_EntityShellCompany_187857" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityShellCompany_187857" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness" xlink:label="loc_dei_EntitySmallBusiness_187859" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntitySmallBusiness_187859" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_dei_EntityEmergingGrowthCompany_187860" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityEmergingGrowthCompany_187860" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle" xlink:label="loc_dei_Security12bTitle_187905" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_Security12bTitle_187905" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName" xlink:label="loc_dei_SecurityExchangeName_475895" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_SecurityExchangeName_475895" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_dei_EntityIncorporationStateCountryCode_657947" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityIncorporationStateCountryCode_657947" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber" xlink:label="loc_dei_EntityFileNumber_657946" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityFileNumber_657946" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentAnnualReport" xlink:label="loc_dei_DocumentAnnualReport_1388975" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_DocumentAnnualReport_1388975" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport" xlink:label="loc_dei_DocumentTransitionReport_657950" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_DocumentTransitionReport_657950" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_dei_EntityTaxIdentificationNumber_657954" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityTaxIdentificationNumber_657954" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_dei_EntityAddressAddressLine1_657956" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityAddressAddressLine1_657956" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_dei_EntityAddressCityOrTown_657957" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityAddressCityOrTown_657957" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_dei_EntityAddressPostalZipCode_883742" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityAddressPostalZipCode_883742" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_dei_EntityAddressStateOrProvince_475896" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityAddressStateOrProvince_475896" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode" xlink:label="loc_dei_CityAreaCode_657959" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_CityAreaCode_657959" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber" xlink:label="loc_dei_LocalPhoneNumber_657960" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_LocalPhoneNumber_657960" use="optional" order="30" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_475893" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_475893" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityPublicFloat" xlink:label="loc_dei_EntityPublicFloat_655666" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityPublicFloat_655666" use="optional" order="32" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="loc_dei_IcfrAuditorAttestationFlag_885198" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_IcfrAuditorAttestationFlag_885198" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorName" xlink:label="loc_dei_AuditorName_1388976" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_AuditorName_1388976" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorFirmId" xlink:label="loc_dei_AuditorFirmId_1388977" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_AuditorFirmId_1388977" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorLocation" xlink:label="loc_dei_AuditorLocation_1388978" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_AuditorLocation_1388978" use="optional" order="36" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedBalanceSheets">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_22" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract_23" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_22" xlink:to="loc_us-gaap_AssetsAbstract_23" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaap_AssetsCurrentAbstract_24" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_23" xlink:to="loc_us-gaap_AssetsCurrentAbstract_24" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_35" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_24" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_35" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_37" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_24" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_37" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_38" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_24" xlink:to="loc_us-gaap_InventoryNet_38" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ErcReceivables" xlink:label="loc_alot_ErcReceivables_1395046" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_24" xlink:to="loc_alot_ErcReceivables_1395046" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_39" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_24" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_39" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent_40" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_24" xlink:to="loc_us-gaap_AssetsCurrent_40" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_29" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_23" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_29" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_30" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_23" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_30" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_31" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_23" xlink:to="loc_us-gaap_Goodwill_31" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_32" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_23" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_32" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_439484" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_23" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_439484" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsMiscellaneousNoncurrent" xlink:label="loc_us-gaap_OtherAssetsMiscellaneousNoncurrent_33" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_23" xlink:to="loc_us-gaap_OtherAssetsMiscellaneousNoncurrent_33" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_34" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_23" xlink:to="loc_us-gaap_Assets_34" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_25" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_22" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_25" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_26" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_25" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_26" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent_44" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_26" xlink:to="loc_us-gaap_AccountsPayableCurrent_44" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_45" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_26" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_45" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_46" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_26" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_46" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="loc_us-gaap_LinesOfCreditCurrent_49" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_26" xlink:to="loc_us-gaap_LinesOfCreditCurrent_49" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/presentationGuidance" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent" xlink:label="loc_us-gaap_LongTermDebtCurrent_994272" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_26" xlink:to="loc_us-gaap_LongTermDebtCurrent_994272" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationCurrent" xlink:label="loc_alot_RoyaltyObligationCurrent_48" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_26" xlink:to="loc_alot_RoyaltyObligationCurrent_48" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" xlink:label="loc_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue_50" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_26" xlink:to="loc_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue_50" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_51" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_26" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_51" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="loc_us-gaap_DeferredRevenueCurrent_52" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_26" xlink:to="loc_us-gaap_DeferredRevenueCurrent_52" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent_53" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_26" xlink:to="loc_us-gaap_LiabilitiesCurrent_53" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesNoncurrentAbstract_27" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_25" xlink:to="loc_us-gaap_LiabilitiesNoncurrentAbstract_27" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_54" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_27" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_54" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationNonCurrent" xlink:label="loc_alot_RoyaltyObligationNonCurrent_55" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_27" xlink:to="loc_alot_RoyaltyObligationNonCurrent_55" use="optional" order="30" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_439485" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_27" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_439485" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrentAndNoncurrent" xlink:label="loc_us-gaap_TaxesPayableCurrentAndNoncurrent_887842" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_27" xlink:to="loc_us-gaap_TaxesPayableCurrentAndNoncurrent_887842" use="optional" order="32" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredRevenueNoncurrent" xlink:label="loc_us-gaap_DeferredRevenueNoncurrent_1399845" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_27" xlink:to="loc_us-gaap_DeferredRevenueNoncurrent_1399845" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_1217396" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_27" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_1217396" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities_41" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_25" xlink:to="loc_us-gaap_Liabilities_41" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="loc_us-gaap_CommitmentsAndContingencies_42" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_25" xlink:to="loc_us-gaap_CommitmentsAndContingencies_42" use="optional" order="36" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaap_StockholdersEquityAbstract_28" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_25" xlink:to="loc_us-gaap_StockholdersEquityAbstract_28" use="optional" order="37" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue_58" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_28" xlink:to="loc_us-gaap_PreferredStockValue_58" use="optional" order="38" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue_59" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_28" xlink:to="loc_us-gaap_CommonStockValue_59" use="optional" order="39" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_60" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_28" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_60" use="optional" order="40" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_61" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_28" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_61" use="optional" order="41" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaap_TreasuryStockValue_62" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_28" xlink:to="loc_us-gaap_TreasuryStockValue_62" use="optional" order="42" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_63" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_28" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_63" use="optional" order="43" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_64" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_28" xlink:to="loc_us-gaap_StockholdersEquity_64" use="optional" order="44" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_43" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_25" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_43" use="optional" order="45" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_66" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_67" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_66" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_67" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_68" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_66" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_68" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_69" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_66" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_69" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaap_PreferredStockSharesIssued_70" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_66" xlink:to="loc_us-gaap_PreferredStockSharesIssued_70" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_71" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_66" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_71" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_72" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_66" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_72" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_73" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_66" xlink:to="loc_us-gaap_CommonStockSharesIssued_73" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockShares" xlink:label="loc_us-gaap_TreasuryStockShares_74" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_66" xlink:to="loc_us-gaap_TreasuryStockShares_74" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedStatementsOfIncome">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaap_IncomeStatementAbstract_76" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_79" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_79" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfRevenue" xlink:label="loc_us-gaap_CostOfRevenue_80" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_CostOfRevenue_80" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_81" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_GrossProfit_81" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingCostsAndExpensesAbstract" xlink:label="loc_us-gaap_OperatingCostsAndExpensesAbstract_78" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_OperatingCostsAndExpensesAbstract_78" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaap_SellingAndMarketingExpense_95" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingCostsAndExpensesAbstract_78" xlink:to="loc_us-gaap_SellingAndMarketingExpense_95" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_96" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingCostsAndExpensesAbstract_78" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_96" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_97" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingCostsAndExpensesAbstract_78" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_97" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaap_OperatingExpenses_98" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingCostsAndExpensesAbstract_78" xlink:to="loc_us-gaap_OperatingExpenses_98" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_82" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_OperatingIncomeLoss_82" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="loc_us-gaap_NonoperatingIncomeExpenseAbstract_77" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_NonoperatingIncomeExpenseAbstract_77" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaap_InterestExpense_1085700" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract_77" xlink:to="loc_us-gaap_InterestExpense_1085700" use="optional" order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_1085701" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract_77" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_1085701" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_1085699" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract_77" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_1085699" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_1215550" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract_77" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_1215550" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_93" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract_77" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_93" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense_94" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract_77" xlink:to="loc_us-gaap_NonoperatingIncomeExpense_94" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_83" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_83" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_84" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_84" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/presentationGuidance" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_85" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_NetIncomeLoss_85" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_86" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_EarningsPerShareBasic_86" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_87" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_EarningsPerShareDiluted_87" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_88" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_88" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_653144" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_653144" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_90" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_90" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_100" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_108" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_100" xlink:to="loc_us-gaap_NetIncomeLoss_108" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_101" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_100" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_101" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_102" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_101" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_102" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax_103" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_101" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax_103" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax_104" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_101" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax_104" use="optional" order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax_1086462" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_101" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax_1086462" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_107" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_101" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_107" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_109" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_100" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_109" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_111" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_115" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_111" xlink:to="loc_us-gaap_StatementTable_115" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_113" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_115" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_113" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_112" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_113" xlink:to="loc_us-gaap_EquityComponentDomain_112" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_116" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_112" xlink:to="loc_us-gaap_CommonStockMember_116" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_117" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_112" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_117" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_118" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_112" xlink:to="loc_us-gaap_RetainedEarningsMember_118" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember" xlink:label="loc_us-gaap_TreasuryStockMember_119" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_112" xlink:to="loc_us-gaap_TreasuryStockMember_119" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_120" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_112" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_120" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_114" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_115" xlink:to="loc_us-gaap_StatementLineItems_114" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_121" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_StockholdersEquity_121" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaap_SharesOutstanding_122" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_SharesOutstanding_122" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_123" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_123" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_124" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_124" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_125" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_125" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross_126" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross_126" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross_127" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross_127" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsCommonStockCash" xlink:label="loc_us-gaap_DividendsCommonStockCash_130" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_DividendsCommonStockCash_130" use="optional" order="17" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_131" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_NetIncomeLoss_131" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_132" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_132" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_133" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_StockholdersEquity_133" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaap_SharesOutstanding_134" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_114" xlink:to="loc_us-gaap_SharesOutstanding_134" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquityParenthetical">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_136" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareCashPaid" xlink:label="loc_us-gaap_CommonStockDividendsPerShareCashPaid_137" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_136" xlink:to="loc_us-gaap_CommonStockDividendsPerShareCashPaid_137" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConsolidatedStatementsOfCashFlows">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_139" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_144" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_139" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_144" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaap_ProfitLoss_176" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_144" xlink:to="loc_us-gaap_ProfitLoss_176" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_140" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_144" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_140" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_148" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_140" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_148" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCosts" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts_149" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_140" xlink:to="loc_us-gaap_AmortizationOfFinancingCosts_149" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_150" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_140" xlink:to="loc_us-gaap_ShareBasedCompensation_150" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_1215646" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_140" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_1215646" use="optional" order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_1085718" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_140" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_1085718" use="optional" order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits_151" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_140" xlink:to="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits_151" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_141" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_140" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_141" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_153" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_141" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_153" use="optional" order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_OtherEmployeeRetentionCreditReceivable" xlink:label="loc_alot_OtherEmployeeRetentionCreditReceivable_1095904" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_141" xlink:to="loc_alot_OtherEmployeeRetentionCreditReceivable_1095904" use="optional" order="12" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_154" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_141" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_154" use="optional" order="13" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_155" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_141" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_155" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_156" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_141" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_156" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_157" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_141" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_157" use="optional" order="16" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_177" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_144" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_177" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_143" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_139" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_143" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_1399928" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_143" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_1399928" use="optional" order="19" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_174" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_143" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_174" use="optional" order="20" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_175" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_143" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_175" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_139" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_158" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_158" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromStockPlans" xlink:label="loc_us-gaap_ProceedsFromStockPlans_879870" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" xlink:to="loc_us-gaap_ProceedsFromStockPlans_879870" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_879874" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_879874" use="optional" order="25" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_1399931" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" xlink:to="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_1399931" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PaymentsOfMinimumGuaranteeRoyaltyObligation" xlink:label="loc_alot_PaymentsOfMinimumGuaranteeRoyaltyObligation_439489" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" xlink:to="loc_alot_PaymentsOfMinimumGuaranteeRoyaltyObligation_439489" use="optional" order="27" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan" xlink:label="loc_alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan_879880" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" xlink:to="loc_alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan_879880" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_160" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_160" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfOtherLongTermDebt" xlink:label="loc_us-gaap_RepaymentsOfOtherLongTermDebt_879886" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" xlink:to="loc_us-gaap_RepaymentsOfOtherLongTermDebt_879886" use="optional" order="30" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfMediumTermNotes" xlink:label="loc_us-gaap_RepaymentsOfMediumTermNotes_164" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" xlink:to="loc_us-gaap_RepaymentsOfMediumTermNotes_164" use="optional" order="31" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDebtIssuanceCosts" xlink:label="loc_us-gaap_PaymentsOfDebtIssuanceCosts_165" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" xlink:to="loc_us-gaap_PaymentsOfDebtIssuanceCosts_165" use="optional" order="32" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="loc_us-gaap_PaymentsOfDividendsCommonStock_166" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" xlink:to="loc_us-gaap_PaymentsOfDividendsCommonStock_166" use="optional" order="33" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_167" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_142" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_167" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_179" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_139" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_179" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_180" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_139" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_180" use="optional" order="36" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_181" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_139" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_181" use="optional" order="37" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_182" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_139" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_182" use="optional" order="38" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="loc_us-gaap_SupplementalCashFlowInformationAbstract_655867" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_139" xlink:to="loc_us-gaap_SupplementalCashFlowInformationAbstract_655867" use="optional" order="39" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPaidNet" xlink:label="loc_us-gaap_InterestPaidNet_183" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract_655867" xlink:to="loc_us-gaap_InterestPaidNet_183" use="optional" order="40" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="loc_us-gaap_IncomeTaxesPaidNet_184" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract_655867" xlink:to="loc_us-gaap_IncomeTaxesPaidNet_184" use="optional" order="41" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_145" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_139" xlink:to="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_145" use="optional" order="42" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment" xlink:label="loc_alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment_1399945" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_145" xlink:to="loc_alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment_1399945" use="optional" order="43" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement" xlink:label="loc_alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement_1399989" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_145" xlink:to="loc_alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement_1399989" use="optional" order="44" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/SummaryOfSignificantAccountingPolicies">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_1035" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_1036" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1035" xlink:to="loc_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_1036" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/Acquisitions">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_1068" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_1069" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_1068" xlink:to="loc_us-gaap_BusinessCombinationDisclosureTextBlock_1069" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/RevenueRecognition">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_1062" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_1063" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_1062" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_1063" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IntangibleAssets">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_1083" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaap_IntangibleAssetsDisclosureTextBlock_1084" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_1083" xlink:to="loc_us-gaap_IntangibleAssetsDisclosureTextBlock_1084" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/Inventories">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_1097" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_1098" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_1097" xlink:to="loc_us-gaap_InventoryDisclosureTextBlock_1098" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/PropertyPlantAndEquipment">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_1103" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_1104" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_1103" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_1104" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AccruedExpenses">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_1109" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_1110" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_1109" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_1110" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/CreditAgreementAndLongTermDebt">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_1118" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="loc_us-gaap_DebtDisclosureTextBlock_1119" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_1118" xlink:to="loc_us-gaap_DebtDisclosureTextBlock_1119" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/PaycheckProtectionProgramLoan">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_879217" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DisclosureForPaycheckProtectionProgramLoanTextBlock" xlink:label="loc_alot_DisclosureForPaycheckProtectionProgramLoanTextBlock_1399935" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_879217" xlink:to="loc_alot_DisclosureForPaycheckProtectionProgramLoanTextBlock_1399935" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagement">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_1125" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_1126" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_1125" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_1126" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/EmployeeRetentionCredit">
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditDisclosureAbstract" xlink:label="loc_alot_EmployeeRetentionCreditDisclosureAbstract_1086405" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DisclosureForEmployeeRetentionCreditTextBlock" xlink:label="loc_alot_DisclosureForEmployeeRetentionCreditTextBlock_1399936" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureAbstract_1086405" xlink:to="loc_alot_DisclosureForEmployeeRetentionCreditTextBlock_1399936" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/RoyaltyObligation">
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationDisclosureAbstract" xlink:label="loc_alot_RoyaltyObligationDisclosureAbstract_439506" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock" xlink:label="loc_alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock_1399939" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_RoyaltyObligationDisclosureAbstract_439506" xlink:to="loc_alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock_1399939" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/Leases">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_439429" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_439430" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439429" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_439430" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AccumulatedOtherComprehensiveLoss">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_1131" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="loc_us-gaap_ComprehensiveIncomeNoteTextBlock_1132" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_1131" xlink:to="loc_us-gaap_ComprehensiveIncomeNoteTextBlock_1132" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareholdersEquity">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FederalHomeLoanBanksAbstract" xlink:label="loc_us-gaap_FederalHomeLoanBanksAbstract_1137" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_1138" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FederalHomeLoanBanksAbstract_1137" xlink:to="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_1138" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareBasedCompensation">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1140" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_1141" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1140" xlink:to="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_1141" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxes">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_1151" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_1152" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_1151" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_1152" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformation">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_1161" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock_1162" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_1161" xlink:to="loc_us-gaap_SegmentReportingDisclosureTextBlock_1162" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/EmployeeBenefitPlans">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PostemploymentBenefitsAbstract" xlink:label="loc_us-gaap_PostemploymentBenefitsAbstract_1169" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" xlink:label="loc_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_1170" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PostemploymentBenefitsAbstract_1169" xlink:to="loc_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_1170" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ProductWarrantyLiability">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GuaranteesAndProductWarrantiesAbstract" xlink:label="loc_us-gaap_GuaranteesAndProductWarrantiesAbstract_1172" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyDisclosureTextBlock" xlink:label="loc_us-gaap_ProductWarrantyDisclosureTextBlock_1173" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GuaranteesAndProductWarrantiesAbstract_1172" xlink:to="loc_us-gaap_ProductWarrantyDisclosureTextBlock_1173" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConcentrationOfRisk">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RisksAndUncertaintiesAbstract" xlink:label="loc_us-gaap_RisksAndUncertaintiesAbstract_1178" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:label="loc_us-gaap_ConcentrationRiskDisclosureTextBlock_1179" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RisksAndUncertaintiesAbstract_1178" xlink:to="loc_us-gaap_ConcentrationRiskDisclosureTextBlock_1179" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/CommitmentsAndContingencies">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_1181" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_1182" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_1181" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_1182" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/FairValueMeasurements">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_1187" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock_1188" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_1187" xlink:to="loc_us-gaap_FairValueDisclosuresTextBlock_1188" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReserves">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsAbstract" xlink:label="loc_srt_ValuationAndQualifyingAccountsAbstract_1198" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xlink:label="loc_srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock_1199" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ValuationAndQualifyingAccountsAbstract_1198" xlink:to="loc_srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock_1199" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_1038" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_1039" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_1039" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="loc_us-gaap_ConsolidationPolicyTextBlock_1040" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_ConsolidationPolicyTextBlock_1040" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription_1041" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription_1041" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UseOfEstimates" xlink:label="loc_us-gaap_UseOfEstimates_1042" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_UseOfEstimates_1042" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_1043" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_1043" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="loc_us-gaap_InventoryPolicyTextBlock_1045" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_InventoryPolicyTextBlock_1045" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_1046" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_1046" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="loc_us-gaap_RevenueRecognitionPolicyTextBlock_1047" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_RevenueRecognitionPolicyTextBlock_1047" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesPolicyTextBlock" xlink:label="loc_us-gaap_ReceivablesPolicyTextBlock_1048" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_ReceivablesPolicyTextBlock_1048" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsPolicy" xlink:label="loc_us-gaap_BusinessCombinationsPolicy_1399944" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_BusinessCombinationsPolicy_1399944" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpensePolicy_1049" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpensePolicy_1049" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_1050" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_1050" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingCostsPolicyTextBlock" xlink:label="loc_us-gaap_AdvertisingCostsPolicyTextBlock_1051" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_AdvertisingCostsPolicyTextBlock_1051" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_1052" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_1052" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy_1053" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy_1053" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy_1054" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy_1054" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LessorLeasesPolicyTextBlock" xlink:label="loc_us-gaap_LessorLeasesPolicyTextBlock_442798" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_LessorLeasesPolicyTextBlock_442798" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock_1055" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_IncomeTaxPolicyTextBlock_1055" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="loc_us-gaap_EarningsPerSharePolicyTextBlock_1056" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_EarningsPerSharePolicyTextBlock_1056" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_1057" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_1057" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SelfInsuranceReservePolicyTextBlock" xlink:label="loc_us-gaap_SelfInsuranceReservePolicyTextBlock_653196" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_SelfInsuranceReservePolicyTextBlock_653196" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_1058" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_1058" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativesPolicyTextBlock" xlink:label="loc_us-gaap_DerivativesPolicyTextBlock_1059" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_DerivativesPolicyTextBlock_1059" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_1060" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1038" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_1060" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AcquisitionsTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_1071" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_1080" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_1071" xlink:to="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_1080" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_1081" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_1071" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_1081" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_1399866" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_1071" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_1399866" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_1399948" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_1071" xlink:to="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_1399948" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/RevenueRecognitionTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_1065" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_1066" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_1065" xlink:to="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_1066" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IntangibleAssetsTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_1086" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_1087" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_1086" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_1087" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_1088" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_1086" xlink:to="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_1088" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/InventoriesTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_1100" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_1101" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_1100" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_1101" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/PropertyPlantAndEquipmentTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_1106" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_1107" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_1106" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_1107" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AccruedExpensesTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_1112" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_1113" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_1112" xlink:to="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_1113" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/CreditAgreementAndLongTermDebtTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_1121" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfDebtTableTextBlock_1122" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_1121" xlink:to="loc_us-gaap_ScheduleOfDebtTableTextBlock_1122" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_1123" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_1121" xlink:to="loc_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_1123" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_1128" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_1129" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_1128" xlink:to="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_1129" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/LeasesTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_439433" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock" xlink:label="loc_alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock_1399942" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439433" xlink:to="loc_alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock_1399942" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_442792" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439433" xlink:to="loc_us-gaap_LeaseCostTableTextBlock_442792" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_442794" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439433" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_442794" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock_442793" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439433" xlink:to="loc_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock_442793" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AccumulatedOtherComprehensiveLossTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_1134" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_1135" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_1134" xlink:to="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_1135" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareBasedCompensationTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1143" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock_1144" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1143" xlink:to="loc_us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock_1144" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_1145" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1143" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_1145" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_1146" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1143" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_1146" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_1148" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1143" xlink:to="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_1148" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_1154" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_1155" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_1154" xlink:to="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_1155" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_1156" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_1154" xlink:to="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_1156" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_1157" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_1154" xlink:to="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_1157" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_1158" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_1154" xlink:to="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_1158" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_1159" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_1154" xlink:to="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_1159" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_1164" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_1165" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_1164" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_1165" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock" xlink:label="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock_1166" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_1164" xlink:to="loc_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock_1166" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock_1167" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_1164" xlink:to="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock_1167" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ProductWarrantyLiabilityTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GuaranteesAndProductWarrantiesAbstract" xlink:label="loc_us-gaap_GuaranteesAndProductWarrantiesAbstract_1175" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_1176" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GuaranteesAndProductWarrantiesAbstract_1175" xlink:to="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_1176" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/FairValueMeasurementsTables">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_1190" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_1192" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_1190" xlink:to="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_1192" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_186" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SummaryOfSignificantAccountingPoliciesTable" xlink:label="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_186" xlink:to="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_193" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_193" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_193" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandImprovementsMember" xlink:label="loc_us-gaap_LandImprovementsMember_202" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194" xlink:to="loc_us-gaap_LandImprovementsMember_202" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BuildingAndLeaseholdImprovementsMember" xlink:label="loc_alot_BuildingAndLeaseholdImprovementsMember_203" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194" xlink:to="loc_alot_BuildingAndLeaseholdImprovementsMember_203" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_204" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194" xlink:to="loc_us-gaap_MachineryAndEquipmentMember_204" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ComputerEquipmentAndSoftwareMember" xlink:label="loc_alot_ComputerEquipmentAndSoftwareMember_205" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_194" xlink:to="loc_alot_ComputerEquipmentAndSoftwareMember_205" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_195" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_srt_RangeAxis_195" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_196" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_195" xlink:to="loc_srt_RangeMember_196" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_206" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_196" xlink:to="loc_srt_MaximumMember_206" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_207" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_196" xlink:to="loc_srt_MinimumMember_207" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_191" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_srt_ProductOrServiceAxis_191" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_192" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_191" xlink:to="loc_srt_ProductsAndServicesDomain_192" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AirborneProductMember" xlink:label="loc_alot_AirborneProductMember_201" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_192" xlink:to="loc_alot_AirborneProductMember_201" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_189" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_189" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_190" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_189" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_190" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_200" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_190" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_200" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_188" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_188" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_187" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_188" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_187" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_199" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_187" xlink:to="loc_us-gaap_SalesRevenueNetMember_199" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_653200" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_653200" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_653201" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_653200" xlink:to="loc_us-gaap_TypeOfAdoptionMember_653201" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_879344" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_DebtInstrumentAxis_879344" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_879345" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_879344" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_879345" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PromissoryNoteMember" xlink:label="loc_alot_PromissoryNoteMember_880277" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_879345" xlink:to="loc_alot_PromissoryNoteMember_880277" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_879347" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_CreditFacilityAxis_879347" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_879348" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_879347" xlink:to="loc_us-gaap_CreditFacilityDomain_879348" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PaycheckProtectionProgramLoanMember" xlink:label="loc_alot_PaycheckProtectionProgramLoanMember_879349" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_879348" xlink:to="loc_alot_PaycheckProtectionProgramLoanMember_879349" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="loc_us-gaap_LineOfCreditFacilityAxis_880274" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_LineOfCreditFacilityAxis_880274" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain_880275" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis_880274" xlink:to="loc_us-gaap_LineOfCreditFacilityLenderDomain_880275" use="optional" order="30" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_GreenwoodCreditUnionMember" xlink:label="loc_alot_GreenwoodCreditUnionMember_880276" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLenderDomain_880275" xlink:to="loc_alot_GreenwoodCreditUnionMember_880276" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeAxis" xlink:label="loc_us-gaap_TradingActivityByTypeAxis_1396044" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_us-gaap_TradingActivityByTypeAxis_1396044" use="optional" order="32" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeDomain" xlink:label="loc_us-gaap_TradingActivityByTypeDomain_1396045" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TradingActivityByTypeAxis_1396044" xlink:to="loc_us-gaap_TradingActivityByTypeDomain_1396045" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignExchangeMember" xlink:label="loc_us-gaap_ForeignExchangeMember_1396046" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TradingActivityByTypeDomain_1396045" xlink:to="loc_us-gaap_ForeignExchangeMember_1396046" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SummaryOfSignificantAccountingPoliciesLineItems" xlink:label="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesTable_198" xlink:to="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashEquivalentsMaturityPeriodDescription" xlink:label="loc_alot_CashEquivalentsMaturityPeriodDescription_208" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_alot_CashEquivalentsMaturityPeriodDescription_208" use="optional" order="36" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashHeldInForeignBankAccounts" xlink:label="loc_alot_CashHeldInForeignBankAccounts_209" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_alot_CashHeldInForeignBankAccounts_209" use="optional" order="37" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_210" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_210" use="optional" order="38" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PercentageOfServiceRevenueToTotalRevenue" xlink:label="loc_alot_PercentageOfServiceRevenueToTotalRevenue_1399990" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_alot_PercentageOfServiceRevenueToTotalRevenue_1399990" use="optional" order="39" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProductsWarrantyPeriod" xlink:label="loc_alot_ProductsWarrantyPeriod_212" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_alot_ProductsWarrantyPeriod_212" use="optional" order="40" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_213" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_213" use="optional" order="41" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingExpense" xlink:label="loc_us-gaap_AdvertisingExpense_214" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_AdvertisingExpense_214" use="optional" order="42" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_215" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_215" use="optional" order="43" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_216" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_216" use="optional" order="44" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_217" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_217" use="optional" order="45" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense" xlink:label="loc_us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense_653197" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense_653197" use="optional" order="46" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_879350" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_879350" use="optional" order="47" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLoans" xlink:label="loc_us-gaap_ProceedsFromLoans_880270" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_ProceedsFromLoans_880270" use="optional" order="48" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_1388486" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_1388486" use="optional" order="49" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentDecreaseForgiveness" xlink:label="loc_us-gaap_DebtInstrumentDecreaseForgiveness_1394573" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_SummaryOfSignificantAccountingPoliciesLineItems_197" xlink:to="loc_us-gaap_DebtInstrumentDecreaseForgiveness_1394573" use="optional" order="50" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_362" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_366" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_362" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_366" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_364" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_366" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_364" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_363" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_364" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_363" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_365" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_366" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_365" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_1399858" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_1399858" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_368" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_368" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_369" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_369" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_371" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_371" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_372" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_372" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill" xlink:label="loc_alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill_1399859" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill_1399859" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_374" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_374" use="optional" order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_378" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_365" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_378" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_380" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_386" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_380" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_386" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_383" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_386" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_383" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_382" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_383" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_382" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_384" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_386" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_384" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_385" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_384" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_385" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_1399863" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_385" xlink:to="loc_us-gaap_CustomerRelationshipsMember_1399863" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_1399862" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_385" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_1399862" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems_381" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_386" xlink:to="loc_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems_381" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_1399861" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems_381" xlink:to="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_1399861" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_388" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems_381" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_388" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_1399875" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessAcquisitionProFormaInformationTable" xlink:label="loc_alot_BusinessAcquisitionProFormaInformationTable_1399877" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_1399875" xlink:to="loc_alot_BusinessAcquisitionProFormaInformationTable_1399877" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1399881" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_BusinessAcquisitionProFormaInformationTable_1399877" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1399881" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399882" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1399881" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399882" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AgreementWithAstroMachineForAssetAcquisitionsMember" xlink:label="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember_1399883" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399882" xlink:to="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember_1399883" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessAcquisitionProFormaInformationLineItems" xlink:label="loc_alot_BusinessAcquisitionProFormaInformationLineItems_1399878" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_BusinessAcquisitionProFormaInformationTable_1399877" xlink:to="loc_alot_BusinessAcquisitionProFormaInformationLineItems_1399878" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessAcquisitionRevenue" xlink:label="loc_alot_BusinessAcquisitionRevenue_1399879" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_BusinessAcquisitionProFormaInformationLineItems_1399878" xlink:to="loc_alot_BusinessAcquisitionRevenue_1399879" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BusinessAcquisitionEarningBeforeTaxes" xlink:label="loc_alot_BusinessAcquisitionEarningBeforeTaxes_1399946" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_BusinessAcquisitionProFormaInformationLineItems_1399878" xlink:to="loc_alot_BusinessAcquisitionEarningBeforeTaxes_1399946" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_1399963" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_1399964" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_1399963" xlink:to="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_1399964" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399966" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_1399964" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399966" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399967" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399966" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399967" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_1399968" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399967" xlink:to="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_1399968" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1399965" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_1399964" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1399965" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure_1399969" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1399965" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure_1399969" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_1399970" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_1399965" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_1399970" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AcquisitionsAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_1399885" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_1399885" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1399888" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1399888" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399889" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1399888" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399889" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AgreementWithAstroMachineForAssetAcquisitionsMember" xlink:label="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember_1399890" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1399889" xlink:to="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember_1399890" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_1399895" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_1399895" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_1399896" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_1399895" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_1399896" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_1399897" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_1399896" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_1399897" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeAxis" xlink:label="loc_us-gaap_MeasurementInputTypeAxis_1399904" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_us-gaap_MeasurementInputTypeAxis_1399904" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeDomain" xlink:label="loc_us-gaap_MeasurementInputTypeDomain_1399905" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MeasurementInputTypeAxis_1399904" xlink:to="loc_us-gaap_MeasurementInputTypeDomain_1399905" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MeasurementInputRoyaltyRateMember" xlink:label="loc_alot_MeasurementInputRoyaltyRateMember_1399906" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MeasurementInputTypeDomain_1399905" xlink:to="loc_alot_MeasurementInputRoyaltyRateMember_1399906" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MeasurementInputCustomerAttritionRateMember" xlink:label="loc_alot_MeasurementInputCustomerAttritionRateMember_1399911" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MeasurementInputTypeDomain_1399905" xlink:to="loc_alot_MeasurementInputCustomerAttritionRateMember_1399911" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputDiscountRateMember" xlink:label="loc_us-gaap_MeasurementInputDiscountRateMember_1399912" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MeasurementInputTypeDomain_1399905" xlink:to="loc_us-gaap_MeasurementInputDiscountRateMember_1399912" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_1399971" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_1399971" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_1399972" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_1399971" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_1399972" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_NonCurrentLiabilityMember" xlink:label="loc_alot_NonCurrentLiabilityMember_1399974" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_1399972" xlink:to="loc_alot_NonCurrentLiabilityMember_1399974" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399975" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399975" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399976" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1399975" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1399976" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueAxis" xlink:label="loc_alot_RoyaltyPaymentsDueAxis_1399993" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_alot_RoyaltyPaymentsDueAxis_1399993" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueDomain" xlink:label="loc_alot_RoyaltyPaymentsDueDomain_1399994" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_RoyaltyPaymentsDueAxis_1399993" xlink:to="loc_alot_RoyaltyPaymentsDueDomain_1399994" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueInNextTwelveMonthsMember" xlink:label="loc_alot_RoyaltyPaymentsDueInNextTwelveMonthsMember_1399995" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_RoyaltyPaymentsDueDomain_1399994" xlink:to="loc_alot_RoyaltyPaymentsDueInNextTwelveMonthsMember_1399995" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueYearTwoMember" xlink:label="loc_alot_RoyaltyPaymentsDueYearTwoMember_1399996" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_RoyaltyPaymentsDueDomain_1399994" xlink:to="loc_alot_RoyaltyPaymentsDueYearTwoMember_1399996" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueYearThreeMember" xlink:label="loc_alot_RoyaltyPaymentsDueYearThreeMember_1399997" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_RoyaltyPaymentsDueDomain_1399994" xlink:to="loc_alot_RoyaltyPaymentsDueYearThreeMember_1399997" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueYearFourMember" xlink:label="loc_alot_RoyaltyPaymentsDueYearFourMember_1399998" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_RoyaltyPaymentsDueDomain_1399994" xlink:to="loc_alot_RoyaltyPaymentsDueYearFourMember_1399998" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyPaymentsDueYearFiveMember" xlink:label="loc_alot_RoyaltyPaymentsDueYearFiveMember_1399999" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_RoyaltyPaymentsDueDomain_1399994" xlink:to="loc_alot_RoyaltyPaymentsDueYearFiveMember_1399999" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_1399887" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1399886" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_1399887" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_1399891" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_1399891" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_1399894" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_1399894" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_1399898" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_1399898" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_1399899" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_1399899" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PurchasePriceIntoAnEscrowAccount" xlink:label="loc_alot_PurchasePriceIntoAnEscrowAccount_1399900" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_alot_PurchasePriceIntoAnEscrowAccount_1399900" use="optional" order="30" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireLand" xlink:label="loc_us-gaap_PaymentsToAcquireLand_1399901" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_PaymentsToAcquireLand_1399901" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AreaOfLand" xlink:label="loc_us-gaap_AreaOfLand_1399902" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_AreaOfLand_1399902" use="optional" order="32" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_NumberOfAcresOfLand" xlink:label="loc_alot_NumberOfAcresOfLand_1399903" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_alot_NumberOfAcresOfLand_1399903" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_FairValueOfIntangibleAssetsMeasurementInput" xlink:label="loc_alot_FairValueOfIntangibleAssetsMeasurementInput_1399909" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_alot_FairValueOfIntangibleAssetsMeasurementInput_1399909" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_1399910" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_Goodwill_1399910" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RoyaltyExpense" xlink:label="loc_us-gaap_RoyaltyExpense_1399979" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_RoyaltyExpense_1399979" use="optional" order="36" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent" xlink:label="loc_alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent_1399982" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent_1399982" use="optional" order="37" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RoyaltyGuaranteesCommitmentsAmount" xlink:label="loc_us-gaap_RoyaltyGuaranteesCommitmentsAmount_1400000" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_us-gaap_RoyaltyGuaranteesCommitmentsAmount_1400000" use="optional" order="38" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue" xlink:label="loc_alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue_1400001" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_1399887" xlink:to="loc_alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue_1400001" use="optional" order="39" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="loc_us-gaap_DisaggregationOfRevenueAbstract_222" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_224" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueAbstract_222" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_224" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_226" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_224" xlink:to="loc_srt_StatementGeographicalAxis_226" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_225" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_226" xlink:to="loc_srt_SegmentGeographicalDomain_225" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="loc_country_US_228" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_225" xlink:to="loc_country_US_228" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EuropeMember" xlink:label="loc_srt_EuropeMember_229" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_225" xlink:to="loc_srt_EuropeMember_229" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_CA" xlink:label="loc_country_CA_231" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_225" xlink:to="loc_country_CA_231" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AsiaMember" xlink:label="loc_srt_AsiaMember_230" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_225" xlink:to="loc_srt_AsiaMember_230" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CentralAndSouthAmericaMember" xlink:label="loc_alot_CentralAndSouthAmericaMember_232" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_225" xlink:to="loc_alot_CentralAndSouthAmericaMember_232" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_OthersCountriesMember" xlink:label="loc_alot_OthersCountriesMember_233" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_225" xlink:to="loc_alot_OthersCountriesMember_233" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_223" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_224" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_223" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_227" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_223" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_227" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="loc_us-gaap_DisaggregationOfRevenueAbstract_235" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_237" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueAbstract_235" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_237" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_238" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_237" xlink:to="loc_srt_ProductOrServiceAxis_238" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_239" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_238" xlink:to="loc_srt_ProductsAndServicesDomain_239" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_HardwareProductsMember" xlink:label="loc_alot_HardwareProductsMember_241" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_239" xlink:to="loc_alot_HardwareProductsMember_241" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SuppliesMember" xlink:label="loc_alot_SuppliesMember_242" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_239" xlink:to="loc_alot_SuppliesMember_242" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ServiceAndOtherMember" xlink:label="loc_alot_ServiceAndOtherMember_243" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_239" xlink:to="loc_alot_ServiceAndOtherMember_243" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_236" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_237" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_236" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_240" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_236" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_240" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="loc_us-gaap_DisaggregationOfRevenueAbstract_245" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1085761" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueAbstract_245" xlink:to="loc_us-gaap_StatementTable_1085761" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingEstimateByTypeAxis" xlink:label="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085766" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1085761" xlink:to="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085766" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingEstimateTypeDomain" xlink:label="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085767" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085766" xlink:to="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085767" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember" xlink:label="loc_us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember_1085768" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085767" xlink:to="loc_us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember_1085768" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_1085762" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1085761" xlink:to="loc_us-gaap_StatementClassOfStockAxis_1085762" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_1085763" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_1085762" xlink:to="loc_us-gaap_ClassOfStockDomain_1085763" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_1399917" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1085761" xlink:to="loc_srt_MajorCustomersAxis_1399917" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_1399918" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_1399917" xlink:to="loc_srt_NameOfMajorCustomerDomain_1399918" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AerospaceCustomerMember" xlink:label="loc_alot_AerospaceCustomerMember_1399919" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_1399918" xlink:to="loc_alot_AerospaceCustomerMember_1399919" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1085764" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1085761" xlink:to="loc_us-gaap_StatementLineItems_1085764" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_246" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_246" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions" xlink:label="loc_alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions_883792" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions_883792" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetNet" xlink:label="loc_us-gaap_ContractWithCustomerAssetNet_248" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_us-gaap_ContractWithCustomerAssetNet_248" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="loc_us-gaap_CapitalizedContractCostNet_1099126" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_us-gaap_CapitalizedContractCostNet_1099126" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostAmortization" xlink:label="loc_us-gaap_CapitalizedContractCostAmortization_250" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_us-gaap_CapitalizedContractCostAmortization_250" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostNetCurrent" xlink:label="loc_us-gaap_CapitalizedContractCostNetCurrent_252" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_us-gaap_CapitalizedContractCostNetCurrent_252" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining" xlink:label="loc_alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining_1086487" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining_1086487" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CapitalizedContractCostNetLongTermAndShortTerm" xlink:label="loc_alot_CapitalizedContractCostNetLongTermAndShortTerm_1399916" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_alot_CapitalizedContractCostNetLongTermAndShortTerm_1399916" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SettlementOfContractClaim" xlink:label="loc_alot_SettlementOfContractClaim_1399920" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_alot_SettlementOfContractClaim_1399920" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SettlementofContractClaimRevenueRecognized" xlink:label="loc_alot_SettlementofContractClaimRevenueRecognized_1399924" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_alot_SettlementofContractClaimRevenueRecognized_1399924" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod" xlink:label="loc_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod_1399983" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1085764" xlink:to="loc_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod_1399983" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_393" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_400" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_393" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_400" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_397" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_400" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_397" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_397" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerContractsMember" xlink:label="loc_us-gaap_CustomerContractsMember_410" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399" xlink:to="loc_us-gaap_CustomerContractsMember_410" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ExistingTechnologyMember" xlink:label="loc_alot_ExistingTechnologyMember_412" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399" xlink:to="loc_alot_ExistingTechnologyMember_412" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DistributorRelationsMember" xlink:label="loc_alot_DistributorRelationsMember_413" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399" xlink:to="loc_alot_DistributorRelationsMember_413" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksMember" xlink:label="loc_us-gaap_TrademarksMember_1399927" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_399" xlink:to="loc_us-gaap_TrademarksMember_1399927" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_396" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_400" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_396" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_396" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MiltopeCorporationMember" xlink:label="loc_alot_MiltopeCorporationMember_403" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395" xlink:to="loc_alot_MiltopeCorporationMember_403" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RuggedInformationTechnologyEquipmentCorporationMember" xlink:label="loc_alot_RuggedInformationTechnologyEquipmentCorporationMember_404" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395" xlink:to="loc_alot_RuggedInformationTechnologyEquipmentCorporationMember_404" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TrojanlabelApSMember" xlink:label="loc_alot_TrojanlabelApSMember_405" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395" xlink:to="loc_alot_TrojanlabelApSMember_405" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AgreementWithAstroMachineForAssetAcquisitionsMember" xlink:label="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember_1399929" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_395" xlink:to="loc_alot_AgreementWithAstroMachineForAssetAcquisitionsMember_1399929" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaap_TypeOfArrangementAxis_401" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_400" xlink:to="loc_us-gaap_TypeOfArrangementAxis_401" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_394" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfArrangementAxis_401" xlink:to="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_394" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_HoneywellAssetPurchaseAndLicenseAgreementMember" xlink:label="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember_402" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_394" xlink:to="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember_402" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_398" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_400" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_398" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_406" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_398" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_406" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_407" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_398" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_407" use="optional" order="19" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment" xlink:label="loc_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment_408" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_398" xlink:to="loc_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment_408" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_409" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_398" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_409" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwillAbstract" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwillAbstract_423" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IntangibleAssetsTable" xlink:label="loc_alot_IntangibleAssetsTable_1085788" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwillAbstract_423" xlink:to="loc_alot_IntangibleAssetsTable_1085788" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1085790" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_IntangibleAssetsTable_1085788" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1085790" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1085791" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1085790" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1085791" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerContractsMember" xlink:label="loc_us-gaap_CustomerContractsMember_1085792" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1085791" xlink:to="loc_us-gaap_CustomerContractsMember_1085792" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingEstimateByTypeAxis" xlink:label="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085793" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_IntangibleAssetsTable_1085788" xlink:to="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085793" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ChangeInAccountingEstimateTypeDomain" xlink:label="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085794" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ChangeInAccountingEstimateByTypeAxis_1085793" xlink:to="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085794" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsAmortizationPeriodMember" xlink:label="loc_us-gaap_IntangibleAssetsAmortizationPeriodMember_1085795" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ChangeInAccountingEstimateTypeDomain_1085794" xlink:to="loc_us-gaap_IntangibleAssetsAmortizationPeriodMember_1085795" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaap_TypeOfArrangementAxis_1085796" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_IntangibleAssetsTable_1085788" xlink:to="loc_us-gaap_TypeOfArrangementAxis_1085796" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_1085797" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfArrangementAxis_1085796" xlink:to="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_1085797" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_HoneywellAssetPurchaseAndLicenseAgreementMember" xlink:label="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember_1085800" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_1085797" xlink:to="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember_1085800" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1085802" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_IntangibleAssetsTable_1085788" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1085802" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1085803" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1085802" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1085803" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RuggedInformationTechnologyEquipmentCorporationMember" xlink:label="loc_alot_RuggedInformationTechnologyEquipmentCorporationMember_1085804" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1085803" xlink:to="loc_alot_RuggedInformationTechnologyEquipmentCorporationMember_1085804" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IntangibleAssetsLineItems" xlink:label="loc_alot_IntangibleAssetsLineItems_1085789" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_IntangibleAssetsTable_1085788" xlink:to="loc_alot_IntangibleAssetsLineItems_1085789" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsFinitelived" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsFinitelived_424" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_IntangibleAssetsLineItems_1085789" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsFinitelived_424" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_425" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_IntangibleAssetsLineItems_1085789" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_425" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod" xlink:label="loc_alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod_1085820" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_IntangibleAssetsLineItems_1085789" xlink:to="loc_alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod_1085820" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_1086489" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_IntangibleAssetsLineItems_1085789" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_1086489" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization" xlink:label="loc_alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization_1086493" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_IntangibleAssetsLineItems_1085789" xlink:to="loc_alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization_1086493" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_427" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_428" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_427" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_428" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_429" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_427" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_429" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_430" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_427" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_430" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_431" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_427" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_431" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_432" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_427" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_432" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/InventoriesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_469" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_InventoryDemonstrationEquipment" xlink:label="loc_alot_InventoryDemonstrationEquipment_470" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_469" xlink:to="loc_alot_InventoryDemonstrationEquipment_470" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_461" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsAndSupplies" xlink:label="loc_us-gaap_InventoryRawMaterialsAndSupplies_462" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_461" xlink:to="loc_us-gaap_InventoryRawMaterialsAndSupplies_462" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcess" xlink:label="loc_us-gaap_InventoryWorkInProcess_463" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_461" xlink:to="loc_us-gaap_InventoryWorkInProcess_463" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoods" xlink:label="loc_us-gaap_InventoryFinishedGoods_464" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_461" xlink:to="loc_us-gaap_InventoryFinishedGoods_464" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryGross" xlink:label="loc_us-gaap_InventoryGross_465" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_461" xlink:to="loc_us-gaap_InventoryGross_465" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserves" xlink:label="loc_us-gaap_InventoryValuationReserves_466" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_461" xlink:to="loc_us-gaap_InventoryValuationReserves_466" use="optional" order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_467" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_461" xlink:to="loc_us-gaap_InventoryNet_467" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_472" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1215642" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_472" xlink:to="loc_us-gaap_StatementTable_1215642" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1215647" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1215642" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1215647" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1215648" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1215647" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1215648" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1216530" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1215642" xlink:to="loc_us-gaap_StatementLineItems_1216530" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandAndLandImprovements" xlink:label="loc_us-gaap_LandAndLandImprovements_473" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_LandAndLandImprovements_473" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross_474" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_BuildingsAndImprovementsGross_474" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="loc_us-gaap_MachineryAndEquipmentGross_475" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_MachineryAndEquipmentGross_475" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross_476" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareGross_476" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_477" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_477" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_478" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_478" use="optional" order="10" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_479" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1216530" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_479" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_481" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1215653" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_481" xlink:to="loc_us-gaap_StatementTable_1215653" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_1215654" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1215653" xlink:to="loc_us-gaap_StatementClassOfStockAxis_1215654" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_1215655" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_1215654" xlink:to="loc_us-gaap_ClassOfStockDomain_1215655" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_1215657" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1215653" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_1215657" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_1215658" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_1215657" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_1215658" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpenseMember" xlink:label="loc_us-gaap_NonoperatingIncomeExpenseMember_1215659" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_1215658" xlink:to="loc_us-gaap_NonoperatingIncomeExpenseMember_1215659" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1215656" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1215653" xlink:to="loc_us-gaap_StatementLineItems_1215656" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_482" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1215656" xlink:to="loc_us-gaap_Depreciation_482" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedComputerSoftwareImpairments1" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareImpairments1_1215660" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1215656" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareImpairments1_1215660" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_484" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_485" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_484" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_485" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="loc_us-gaap_AccruedProfessionalFeesCurrent_486" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_484" xlink:to="loc_us-gaap_AccruedProfessionalFeesCurrent_486" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedFreight" xlink:label="loc_alot_AccruedFreight_1388830" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_484" xlink:to="loc_alot_AccruedFreight_1388830" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_668252" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_484" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_668252" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedPayrollAndSalesTaxesCurrent" xlink:label="loc_alot_AccruedPayrollAndSalesTaxesCurrent_488" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_484" xlink:to="loc_alot_AccruedPayrollAndSalesTaxesCurrent_488" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedStockHolderRelationFees" xlink:label="loc_alot_AccruedStockHolderRelationFees_657041" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_484" xlink:to="loc_alot_AccruedStockHolderRelationFees_657041" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedSalesCommissionCurrent" xlink:label="loc_us-gaap_AccruedSalesCommissionCurrent_487" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_484" xlink:to="loc_us-gaap_AccruedSalesCommissionCurrent_487" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_490" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_484" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_490" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_491" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_484" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_491" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_1394611" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_484" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_1394611" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_521" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable" xlink:label="loc_us-gaap_DebtInstrumentTable_525" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_521" xlink:to="loc_us-gaap_DebtInstrumentTable_525" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_522" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_525" xlink:to="loc_us-gaap_CreditFacilityAxis_522" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_523" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_522" xlink:to="loc_us-gaap_CreditFacilityDomain_523" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember" xlink:label="loc_alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember_879265" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_523" xlink:to="loc_alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember_879265" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember" xlink:label="loc_alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember_1399860" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_523" xlink:to="loc_alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember_1399860" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="loc_us-gaap_DebtInstrumentLineItems_524" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_525" xlink:to="loc_us-gaap_DebtInstrumentLineItems_524" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_528" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_524" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_528" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="loc_us-gaap_DeferredFinanceCostsNet_529" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_524" xlink:to="loc_us-gaap_DeferredFinanceCostsNet_529" use="optional" order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent" xlink:label="loc_us-gaap_LongTermDebtCurrent_530" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_524" xlink:to="loc_us-gaap_LongTermDebtCurrent_530" use="optional" order="9" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_531" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_524" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_531" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_544" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable" xlink:label="loc_us-gaap_DebtInstrumentTable_548" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_544" xlink:to="loc_us-gaap_DebtInstrumentTable_548" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_545" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_548" xlink:to="loc_us-gaap_CreditFacilityAxis_545" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_546" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_545" xlink:to="loc_us-gaap_CreditFacilityDomain_546" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TermLoanMember" xlink:label="loc_alot_TermLoanMember_549" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_546" xlink:to="loc_alot_TermLoanMember_549" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="loc_us-gaap_DebtInstrumentLineItems_547" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_548" xlink:to="loc_us-gaap_DebtInstrumentLineItems_547" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_550" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_550" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_551" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_551" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_552" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_552" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_553" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_553" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_554" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_554" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaap_LongTermDebt_653628" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_547" xlink:to="loc_us-gaap_LongTermDebt_653628" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_557" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable" xlink:label="loc_us-gaap_DebtInstrumentTable_563" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_557" xlink:to="loc_us-gaap_DebtInstrumentTable_563" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="loc_us-gaap_LineOfCreditFacilityAxis_564" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_LineOfCreditFacilityAxis_564" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain_565" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis_564" xlink:to="loc_us-gaap_LineOfCreditFacilityLenderDomain_565" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BankOfAmericaMember" xlink:label="loc_alot_BankOfAmericaMember_576" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLenderDomain_565" xlink:to="loc_alot_BankOfAmericaMember_576" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_566" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_srt_RangeAxis_566" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_567" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_566" xlink:to="loc_srt_RangeMember_567" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_577" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_567" xlink:to="loc_srt_MinimumMember_577" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_578" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_567" xlink:to="loc_srt_MaximumMember_578" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis" xlink:label="loc_us-gaap_VariableRateAxis_568" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_VariableRateAxis_568" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain" xlink:label="loc_us-gaap_VariableRateDomain_569" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateAxis_568" xlink:to="loc_us-gaap_VariableRateDomain_569" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_579" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_569" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_579" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FederalFundsEffectiveSwapRateMember" xlink:label="loc_us-gaap_FederalFundsEffectiveSwapRateMember_653703" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_569" xlink:to="loc_us-gaap_FederalFundsEffectiveSwapRateMember_653703" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_558" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_CreditFacilityAxis_558" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_559" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_558" xlink:to="loc_us-gaap_CreditFacilityDomain_559" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TermLoanMember" xlink:label="loc_alot_TermLoanMember_570" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_559" xlink:to="loc_alot_TermLoanMember_570" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_571" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_559" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_571" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_560" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_DebtInstrumentAxis_560" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_562" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_560" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_562" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_653761" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_653761" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_653762" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_653761" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_653762" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_879328" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_879328" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_879329" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_879328" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_879329" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherExpenseMember" xlink:label="loc_us-gaap_OtherExpenseMember_879330" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_879329" xlink:to="loc_us-gaap_OtherExpenseMember_879330" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis" xlink:label="loc_srt_StatementScenarioAxis_879331" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_srt_StatementScenarioAxis_879331" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srt_ScenarioUnspecifiedDomain_879332" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementScenarioAxis_879331" xlink:to="loc_srt_ScenarioUnspecifiedDomain_879332" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsAxis" xlink:label="loc_alot_DetailsAxis_1399864" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_alot_DetailsAxis_1399864" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsDomain" xlink:label="loc_alot_DetailsDomain_1399865" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_DetailsAxis_1399864" xlink:to="loc_alot_DetailsDomain_1399865" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_BeforeAmendmentToTheCreditAgreementMember" xlink:label="loc_alot_BeforeAmendmentToTheCreditAgreementMember_1399867" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_DetailsDomain_1399865" xlink:to="loc_alot_BeforeAmendmentToTheCreditAgreementMember_1399867" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOneAxis" xlink:label="loc_alot_DetailsOneAxis_1399868" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_alot_DetailsOneAxis_1399868" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOneDomain" xlink:label="loc_alot_DetailsOneDomain_1399869" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_DetailsOneAxis_1399868" xlink:to="loc_alot_DetailsOneDomain_1399869" use="optional" order="30" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AdditionalTermLoanAvailedMember" xlink:label="loc_alot_AdditionalTermLoanAvailedMember_1399870" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_DetailsOneDomain_1399869" xlink:to="loc_alot_AdditionalTermLoanAvailedMember_1399870" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CreditAgreementAxis" xlink:label="loc_alot_CreditAgreementAxis_1399871" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_alot_CreditAgreementAxis_1399871" use="optional" order="32" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CreditAgreementDomain" xlink:label="loc_alot_CreditAgreementDomain_1399872" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_CreditAgreementAxis_1399871" xlink:to="loc_alot_CreditAgreementDomain_1399872" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_SecondAmendmentCreditAgreementMember" xlink:label="loc_alot_SecondAmendmentCreditAgreementMember_1399873" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_CreditAgreementDomain_1399872" xlink:to="loc_alot_SecondAmendmentCreditAgreementMember_1399873" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="loc_us-gaap_DebtInstrumentLineItems_561" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_563" xlink:to="loc_us-gaap_DebtInstrumentLineItems_561" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_572" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_572" use="optional" order="36" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCredit" xlink:label="loc_us-gaap_LineOfCredit_573" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_LineOfCredit_573" use="optional" order="37" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpenseDebt" xlink:label="loc_us-gaap_InterestExpenseDebt_653693" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_InterestExpenseDebt_653693" use="optional" order="38" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_653681" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_653681" use="optional" order="39" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_879288" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_879288" use="optional" order="40" preferredLabel="http://www.xbrl.org/2003/role/presentationGuidance" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_879299" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_879299" use="optional" order="41" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCommitmentFeeAmount" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeeAmount_879310" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_LineOfCreditFacilityCommitmentFeeAmount_879310" use="optional" order="42" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_879314" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_879314" use="optional" order="43" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DebtInstrumentAdditionalBasisSpread" xlink:label="loc_alot_DebtInstrumentAdditionalBasisSpread_879317" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_alot_DebtInstrumentAdditionalBasisSpread_879317" use="optional" order="44" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate" xlink:label="loc_us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate_879318" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate_879318" use="optional" order="45" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:label="loc_us-gaap_DebtInstrumentPeriodicPaymentPrincipal_879323" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_DebtInstrumentPeriodicPaymentPrincipal_879323" use="optional" order="46" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLongTermLinesOfCredit" xlink:label="loc_us-gaap_ProceedsFromLongTermLinesOfCredit_1399913" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_ProceedsFromLongTermLinesOfCredit_1399913" use="optional" order="47" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtWeightedAverageInterestRateOverTime" xlink:label="loc_us-gaap_LongTermDebtWeightedAverageInterestRateOverTime_1399914" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_561" xlink:to="loc_us-gaap_LongTermDebtWeightedAverageInterestRateOverTime_1399914" use="optional" order="48" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_879222" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_879223" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_879222" xlink:to="loc_us-gaap_StatementTable_879223" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_879224" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_879223" xlink:to="loc_us-gaap_CreditFacilityAxis_879224" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_879225" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_879224" xlink:to="loc_us-gaap_CreditFacilityDomain_879225" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PaycheckProtectionProgramLoanMember" xlink:label="loc_alot_PaycheckProtectionProgramLoanMember_879226" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_879225" xlink:to="loc_alot_PaycheckProtectionProgramLoanMember_879226" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_879227" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_879223" xlink:to="loc_us-gaap_DebtInstrumentAxis_879227" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_879228" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_879227" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_879228" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_GreenwoodCreditUnionMember" xlink:label="loc_alot_GreenwoodCreditUnionMember_879229" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_879228" xlink:to="loc_alot_GreenwoodCreditUnionMember_879229" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_879230" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_879223" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_879230" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_879231" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_879230" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_879231" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_879234" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_879223" xlink:to="loc_us-gaap_StatementLineItems_879234" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_879235" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_879235" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPaymentTerms" xlink:label="loc_us-gaap_DebtInstrumentPaymentTerms_879236" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_DebtInstrumentPaymentTerms_879236" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="loc_us-gaap_DebtInstrumentMaturityDate_879237" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_DebtInstrumentMaturityDate_879237" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_879238" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_879238" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentDecreaseForgiveness" xlink:label="loc_us-gaap_DebtInstrumentDecreaseForgiveness_1085850" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_DebtInstrumentDecreaseForgiveness_1085850" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_1085854" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_879234" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_1085854" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_581" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_585" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_581" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_585" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_583" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_585" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_583" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_582" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_583" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_582" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CrossCurrencyInterestRateContractMember" xlink:label="loc_us-gaap_CrossCurrencyInterestRateContractMember_586" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_582" xlink:to="loc_us-gaap_CrossCurrencyInterestRateContractMember_586" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_879205" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_585" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_879205" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_879206" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_879205" xlink:to="loc_us-gaap_HedgingRelationshipDomain_879206" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashFlowHedgingMember" xlink:label="loc_us-gaap_CashFlowHedgingMember_879207" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingRelationshipDomain_879206" xlink:to="loc_us-gaap_CashFlowHedgingMember_879207" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_584" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_585" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_584" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_879202" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_584" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_879202" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax_879203" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_584" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax_879203" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashPaidTerminationOfSwaps" xlink:label="loc_alot_CashPaidTerminationOfSwaps_879209" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_584" xlink:to="loc_alot_CashPaidTerminationOfSwaps_879209" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_592" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_598" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_592" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_598" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_599" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_598" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_599" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_600" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_599" xlink:to="loc_us-gaap_HedgingRelationshipDomain_600" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashFlowHedgeMember" xlink:label="loc_alot_CashFlowHedgeMember_611" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingRelationshipDomain_600" xlink:to="loc_alot_CashFlowHedgeMember_611" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_596" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_598" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_596" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_595" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_596" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_595" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CrossCurrencyInterestRateContractMember" xlink:label="loc_us-gaap_CrossCurrencyInterestRateContractMember_603" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_595" xlink:to="loc_us-gaap_CrossCurrencyInterestRateContractMember_603" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_593" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_598" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_593" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_594" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_593" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_594" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_597" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_598" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_597" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_608" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_597" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_608" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI" xlink:label="loc_us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI_609" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_597" xlink:to="loc_us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI_609" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_610" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_597" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_610" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditDisclosureAbstract" xlink:label="loc_alot_EmployeeRetentionCreditDisclosureAbstract_1086415" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditDisclosureTable" xlink:label="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureAbstract_1086415" xlink:to="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnusualOrInfrequentItemAxis" xlink:label="loc_us-gaap_UnusualOrInfrequentItemAxis_1086421" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" xlink:to="loc_us-gaap_UnusualOrInfrequentItemAxis_1086421" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnusualOrInfrequentItemDomain" xlink:label="loc_us-gaap_UnusualOrInfrequentItemDomain_1086422" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_UnusualOrInfrequentItemAxis_1086421" xlink:to="loc_us-gaap_UnusualOrInfrequentItemDomain_1086422" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CaresActMember" xlink:label="loc_alot_CaresActMember_1086423" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_UnusualOrInfrequentItemDomain_1086422" xlink:to="loc_alot_CaresActMember_1086423" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_1086429" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_1086429" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_1086430" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_1086429" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_1086430" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:label="loc_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_1086431" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_1086430" xlink:to="loc_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_1086431" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_1086436" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_1086436" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_1086437" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_1086436" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_1086437" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_1086438" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_1086437" xlink:to="loc_us-gaap_CostOfSalesMember_1086438" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember_1086439" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_1086437" xlink:to="loc_us-gaap_SellingAndMarketingExpenseMember_1086439" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_1086440" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_1086437" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_1086440" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_1086441" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_1086437" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_1086441" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_1395721" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_1395721" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_1395722" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_1395721" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_1395722" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditDisclosureLineItems" xlink:label="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureTable_1086416" xlink:to="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages" xlink:label="loc_alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages_1086418" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages_1086418" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter" xlink:label="loc_alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter_1086419" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter_1086419" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter" xlink:label="loc_alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter_1086420" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter_1086420" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit" xlink:label="loc_alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit_1086424" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit_1086424" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCredit" xlink:label="loc_alot_EmployeeRetentionCredit_1086434" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCredit_1086434" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceivables" xlink:label="loc_alot_EmployeeRetentionCreditReceivables_1096017" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCreditReceivables_1096017" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceivableSellingAndMarketing" xlink:label="loc_alot_EmployeeRetentionCreditReceivableSellingAndMarketing_1096030" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCreditReceivableSellingAndMarketing_1096030" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses" xlink:label="loc_alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses_1096033" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses_1096033" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceivableResearchAndDevelopment" xlink:label="loc_alot_EmployeeRetentionCreditReceivableResearchAndDevelopment_1096093" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCreditReceivableResearchAndDevelopment_1096093" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ErcReceivables" xlink:label="loc_alot_ErcReceivables_1395196" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_ErcReceivables_1395196" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeRetentionCreditReceived" xlink:label="loc_alot_EmployeeRetentionCreditReceived_1399941" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_EmployeeRetentionCreditDisclosureLineItems_1086417" xlink:to="loc_alot_EmployeeRetentionCreditReceived_1399941" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationDisclosureAbstract" xlink:label="loc_alot_RoyaltyObligationDisclosureAbstract_439509" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_439511" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_RoyaltyObligationDisclosureAbstract_439509" xlink:to="loc_us-gaap_StatementTable_439511" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaap_TypeOfArrangementAxis_439535" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_439511" xlink:to="loc_us-gaap_TypeOfArrangementAxis_439535" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_439536" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfArrangementAxis_439535" xlink:to="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_439536" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_HoneywellAssetPurchaseAndLicenseAgreementMember" xlink:label="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember_439537" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_439536" xlink:to="loc_alot_HoneywellAssetPurchaseAndLicenseAgreementMember_439537" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_439512" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_439511" xlink:to="loc_us-gaap_StatementClassOfStockAxis_439512" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_439513" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_439512" xlink:to="loc_us-gaap_ClassOfStockDomain_439513" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PeriodAxis" xlink:label="loc_alot_PeriodAxis_1399850" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_439511" xlink:to="loc_alot_PeriodAxis_1399850" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PeriodDomain" xlink:label="loc_alot_PeriodDomain_1399851" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_PeriodAxis_1399850" xlink:to="loc_alot_PeriodDomain_1399851" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_439514" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_439511" xlink:to="loc_us-gaap_StatementLineItems_439514" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PaymentTermPeriod" xlink:label="loc_alot_PaymentTermPeriod_439530" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_PaymentTermPeriod_439530" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_MinimumRoyaltyPaymentObligation" xlink:label="loc_alot_MinimumRoyaltyPaymentObligation_1221222" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_MinimumRoyaltyPaymentObligation_1221222" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_GuaranteedMinimumRoyaltyPayments" xlink:label="loc_alot_GuaranteedMinimumRoyaltyPayments_439545" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_GuaranteedMinimumRoyaltyPayments_439545" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationCurrent" xlink:label="loc_alot_RoyaltyObligationCurrent_439546" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_RoyaltyObligationCurrent_439546" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RoyaltyObligationNonCurrent" xlink:label="loc_alot_RoyaltyObligationNonCurrent_439547" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_RoyaltyObligationNonCurrent_439547" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ExcessRoyaltyPayments" xlink:label="loc_alot_ExcessRoyaltyPayments_439548" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_ExcessRoyaltyPayments_439548" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue" xlink:label="loc_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue_439552" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_439514" xlink:to="loc_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue_439552" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/positiveLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/LeasesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_439466" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_439470" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439466" xlink:to="loc_us-gaap_StatementTable_439470" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis" xlink:label="loc_srt_StatementScenarioAxis_439471" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_439470" xlink:to="loc_srt_StatementScenarioAxis_439471" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srt_ScenarioUnspecifiedDomain_439472" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementScenarioAxis_439471" xlink:to="loc_srt_ScenarioUnspecifiedDomain_439472" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_439480" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_439470" xlink:to="loc_srt_RangeAxis_439480" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_439481" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_439480" xlink:to="loc_srt_RangeMember_439481" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_475126" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_439470" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_475126" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_475127" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_475126" xlink:to="loc_us-gaap_TypeOfAdoptionMember_475127" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_482358" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_439470" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_482358" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_482359" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_482358" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_482359" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_439473" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_439470" xlink:to="loc_us-gaap_StatementLineItems_439473" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_442755" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_439473" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_442755" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_442756" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_439473" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_442756" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_439441" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_OperatingLeasesAbstract" xlink:label="loc_alot_OperatingLeasesAbstract_439442" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439441" xlink:to="loc_alot_OperatingLeasesAbstract_439442" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_439443" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_OperatingLeasesAbstract_439442" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_439443" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_439444" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_OperatingLeasesAbstract_439442" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_439444" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_439445" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_OperatingLeasesAbstract_439442" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_439445" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/LeasesLeaseCostInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_442758" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_442760" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_442758" xlink:to="loc_us-gaap_StatementTable_442760" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_442761" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_442760" xlink:to="loc_us-gaap_StatementClassOfStockAxis_442761" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_442762" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_442761" xlink:to="loc_us-gaap_ClassOfStockDomain_442762" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_442765" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_442760" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_442765" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_442766" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_442765" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_442766" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_442768" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_442766" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_442768" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_442763" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_442760" xlink:to="loc_us-gaap_StatementLineItems_442763" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseExpense" xlink:label="loc_us-gaap_OperatingLeaseExpense_442764" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_442763" xlink:to="loc_us-gaap_OperatingLeaseExpense_442764" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_439451" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_439453" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439451" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_439453" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_439454" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439451" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_439454" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_439455" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439451" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_439455" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_439456" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439451" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_439456" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_1388611" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439451" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_1388611" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_1388614" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439451" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_1388614" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_439460" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439451" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_439460" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_439462" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439451" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_439462" use="optional" order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaap_OperatingLeaseLiability_439463" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_439451" xlink:to="loc_us-gaap_OperatingLeaseLiability_439463" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/LeasesSupplementalCashFlowInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_442770" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_442772" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_442770" xlink:to="loc_us-gaap_StatementTable_442772" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_442775" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_442772" xlink:to="loc_us-gaap_StatementLineItems_442775" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract" xlink:label="loc_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract_442777" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_442775" xlink:to="loc_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract_442777" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments" xlink:label="loc_us-gaap_OperatingLeasePayments_442776" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract_442777" xlink:to="loc_us-gaap_OperatingLeasePayments_442776" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RegulatedOperationsAbstract" xlink:label="loc_us-gaap_RegulatedOperationsAbstract_613" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCapitalizationEquityTable" xlink:label="loc_us-gaap_ScheduleOfCapitalizationEquityTable_616" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RegulatedOperationsAbstract_613" xlink:to="loc_us-gaap_ScheduleOfCapitalizationEquityTable_616" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_617" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityTable_616" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_617" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_614" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_617" xlink:to="loc_us-gaap_EquityComponentDomain_614" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember_618" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_614" xlink:to="loc_us-gaap_AccumulatedTranslationAdjustmentMember_618" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:label="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_987739" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_614" xlink:to="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_987739" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_620" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_614" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_620" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCapitalizationEquityLineItems" xlink:label="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityTable_616" xlink:to="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_622" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" xlink:to="loc_us-gaap_StockholdersEquity_622" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_623" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_623" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:label="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax_624" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" xlink:to="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax_624" use="optional" order="10" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss" xlink:label="loc_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss_879454" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" xlink:to="loc_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss_879454" use="optional" order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_625" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_625" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_626" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCapitalizationEquityLineItems_615" xlink:to="loc_us-gaap_StockholdersEquity_626" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_628" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfStockByClassTable" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_630" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_628" xlink:to="loc_us-gaap_ScheduleOfStockByClassTable_630" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareRepurchaseProgramAxis" xlink:label="loc_us-gaap_ShareRepurchaseProgramAxis_631" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_630" xlink:to="loc_us-gaap_ShareRepurchaseProgramAxis_631" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareRepurchaseProgramDomain" xlink:label="loc_us-gaap_ShareRepurchaseProgramDomain_632" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareRepurchaseProgramAxis_631" xlink:to="loc_us-gaap_ShareRepurchaseProgramDomain_632" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockLineItems" xlink:label="loc_us-gaap_ClassOfStockLineItems_629" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_630" xlink:to="loc_us-gaap_ClassOfStockLineItems_629" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_StockDeliveredDuringPeriodSharesStockOptionsExercise" xlink:label="loc_alot_StockDeliveredDuringPeriodSharesStockOptionsExercise_633" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_629" xlink:to="loc_alot_StockDeliveredDuringPeriodSharesStockOptionsExercise_633" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount" xlink:label="loc_alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount_634" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_629" xlink:to="loc_alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount_634" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_642" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_642" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_643" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" xlink:to="loc_us-gaap_AwardTypeAxis_643" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_643" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_680" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" xlink:to="loc_us-gaap_EmployeeStockOptionMember_680" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_681" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_681" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember" xlink:label="loc_us-gaap_RestrictedStockMember_682" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" xlink:to="loc_us-gaap_RestrictedStockMember_682" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PerformanceSharesMember" xlink:label="loc_us-gaap_PerformanceSharesMember_685" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" xlink:to="loc_us-gaap_PerformanceSharesMember_685" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RestrictedStockAwardMember" xlink:label="loc_alot_RestrictedStockAwardMember_439434" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_650" xlink:to="loc_alot_RestrictedStockAwardMember_439434" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_651" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" xlink:to="loc_srt_TitleOfIndividualAxis_651" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_652" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualAxis_651" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_652" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaap_PlanNameAxis_644" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" xlink:to="loc_us-gaap_PlanNameAxis_644" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaap_PlanNameDomain_645" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_644" xlink:to="loc_us-gaap_PlanNameDomain_645" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TwoThousandFifteenEquityIncentivePlanMember" xlink:label="loc_alot_TwoThousandFifteenEquityIncentivePlanMember_653" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_645" xlink:to="loc_alot_TwoThousandFifteenEquityIncentivePlanMember_653" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeStockPurchasePlanMember" xlink:label="loc_alot_EmployeeStockPurchasePlanMember_654" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_645" xlink:to="loc_alot_EmployeeStockPurchasePlanMember_654" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TwoThousandSevenEquityIncentivePlanMember" xlink:label="loc_alot_TwoThousandSevenEquityIncentivePlanMember_655" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_645" xlink:to="loc_alot_TwoThousandSevenEquityIncentivePlanMember_655" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TwoThousandEighteenEquityIncentivePlanMember" xlink:label="loc_alot_TwoThousandEighteenEquityIncentivePlanMember_656" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_645" xlink:to="loc_alot_TwoThousandEighteenEquityIncentivePlanMember_656" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember" xlink:label="loc_alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember_1399892" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_645" xlink:to="loc_alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember_1399892" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PriorEmployeeStockPurchasePlanMember" xlink:label="loc_alot_PriorEmployeeStockPurchasePlanMember_1399893" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_645" xlink:to="loc_alot_PriorEmployeeStockPurchasePlanMember_1399893" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTaxStatusAxis" xlink:label="loc_us-gaap_RetirementPlanTaxStatusAxis_646" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" xlink:to="loc_us-gaap_RetirementPlanTaxStatusAxis_646" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTaxStatusDomain" xlink:label="loc_us-gaap_RetirementPlanTaxStatusDomain_647" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTaxStatusAxis_646" xlink:to="loc_us-gaap_RetirementPlanTaxStatusDomain_647" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis" xlink:label="loc_srt_StatementScenarioAxis_440997" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" xlink:to="loc_srt_StatementScenarioAxis_440997" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srt_ScenarioUnspecifiedDomain_440998" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementScenarioAxis_440997" xlink:to="loc_srt_ScenarioUnspecifiedDomain_440998" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_648" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_658" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_658" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_659" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_659" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_662" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_662" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_669" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_669" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_671" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_671" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_672" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_672" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_674" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_674" use="optional" order="30" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_676" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_676" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_677" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_677" use="optional" order="32" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate_678" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate_678" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ReservationOfSharesUnderEmployeeStockPurchasePlan" xlink:label="loc_alot_ReservationOfSharesUnderEmployeeStockPurchasePlan_679" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_alot_ReservationOfSharesUnderEmployeeStockPurchasePlan_679" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_439420" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_439420" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_439421" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_439421" use="optional" order="36" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockExpense" xlink:label="loc_us-gaap_RestrictedStockExpense_439431" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_649" xlink:to="loc_us-gaap_RestrictedStockExpense_439431" use="optional" order="37" preferredLabel="http://www.xbrl.org/2003/role/label" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_699" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockOptionPlanExpense" xlink:label="loc_us-gaap_StockOptionPlanExpense_700" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_699" xlink:to="loc_us-gaap_StockOptionPlanExpense_700" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockExpense" xlink:label="loc_us-gaap_RestrictedStockExpense_701" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_699" xlink:to="loc_us-gaap_RestrictedStockExpense_701" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_EmployeeStockPurchasePlanExpense" xlink:label="loc_alot_EmployeeStockPurchasePlanExpense_526304" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_699" xlink:to="loc_alot_EmployeeStockPurchasePlanExpense_526304" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_525319" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_699" xlink:to="loc_us-gaap_ShareBasedCompensation_525319" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_705" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_706" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_705" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_706" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_707" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_705" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_707" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_708" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_705" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_708" use="optional" order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_709" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_705" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_709" use="optional" order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_710" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_705" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_710" use="optional" order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_711" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_705" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_711" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_712" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_705" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_712" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_713" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_705" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_713" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_714" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_705" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_714" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_715" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_705" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_715" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_716" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_705" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_716" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_717" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_705" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_717" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationAbstract_719" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_720" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationAbstract_719" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_720" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_722" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_720" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_722" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_723" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_722" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_723" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RangeThreeMember" xlink:label="loc_alot_RangeThreeMember_734" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_723" xlink:to="loc_alot_RangeThreeMember_734" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RangeFourMember" xlink:label="loc_alot_RangeFourMember_735" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_723" xlink:to="loc_alot_RangeFourMember_735" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RangeFiveMember" xlink:label="loc_alot_RangeFiveMember_736" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_723" xlink:to="loc_alot_RangeFiveMember_736" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_720" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_724" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_724" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_725" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_725" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_726" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_726" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_727" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_727" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_728" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_728" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_729" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_729" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_730" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_730" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_731" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_731" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_732" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_732" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_733" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_721" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_733" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_744" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_746" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_744" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_746" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_745" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_746" xlink:to="loc_us-gaap_AwardTypeAxis_745" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_748" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_745" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_748" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember" xlink:label="loc_alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember_1399943" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_748" xlink:to="loc_alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember_1399943" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_746" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_749" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_749" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_750" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_750" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_751" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_751" use="optional" order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_752" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_752" use="optional" order="9" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_753" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_753" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_754" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_754" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_755" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_755" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_756" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_756" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_757" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_757" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_758" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_747" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_758" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_771" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_772" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_771" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_772" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_773" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_771" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_773" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_774" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_771" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_774" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_776" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_777" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_776" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_777" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_779" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_777" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_779" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_780" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_777" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_780" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentForeignTaxExpenseBenefit_781" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_777" xlink:to="loc_us-gaap_CurrentForeignTaxExpenseBenefit_781" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_782" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_777" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_782" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_778" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_776" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_778" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_783" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_778" xlink:to="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_783" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_784" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_778" xlink:to="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_784" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_785" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_778" xlink:to="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_785" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_786" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_778" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_786" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_787" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_776" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_787" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_800" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_801" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_801" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_653488" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_653488" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:label="loc_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential_653483" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential_653483" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_Incometaxreconciliationchangeinreserves" xlink:label="loc_alot_Incometaxreconciliationchangeinreserves_653491" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_alot_Incometaxreconciliationchangeinreserves_653491" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit" xlink:label="loc_alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit_880355" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit_880355" use="optional" order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment_653485" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment_653485" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes" xlink:label="loc_alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes_880356" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes_880356" use="optional" order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome" xlink:label="loc_alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome_653496" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome_653496" use="optional" order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCreditsForeign_811" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCreditsForeign_811" use="optional" order="9" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsResearch" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCreditsResearch_810" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCreditsResearch_810" use="optional" order="10" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_653487" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_653487" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes" xlink:label="loc_us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes_808" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes_808" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_803" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_803" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncomeTaxReconciliationPppLoanForgiveness" xlink:label="loc_alot_IncomeTaxReconciliationPppLoanForgiveness_1388935" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_alot_IncomeTaxReconciliationPppLoanForgiveness_1388935" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_812" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_812" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_813" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_800" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_813" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_815" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComponentsOfDeferredTaxAssetsAbstract" xlink:label="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_815" xlink:to="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInventory" xlink:label="loc_us-gaap_DeferredTaxAssetsInventory_818" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_us-gaap_DeferredTaxAssetsInventory_818" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsRoyaltyLiability" xlink:label="loc_alot_DeferredTaxAssetsRoyaltyLiability_819" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_alot_DeferredTaxAssetsRoyaltyLiability_819" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_820" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_820" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_821" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_821" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses_826" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses_826" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves_823" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves_823" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsCompensationAccruals" xlink:label="loc_alot_DeferredTaxAssetsCompensationAccruals_822" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_alot_DeferredTaxAssetsCompensationAccruals_822" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_827" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_827" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability" xlink:label="loc_alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability_880357" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability_880357" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsUnrecognizedTaxBenefits" xlink:label="loc_alot_DeferredTaxAssetsUnrecognizedTaxBenefits_824" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_alot_DeferredTaxAssetsUnrecognizedTaxBenefits_824" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign_653473" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign_653473" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsDeferredServiceContractRevenue" xlink:label="loc_alot_DeferredTaxAssetsDeferredServiceContractRevenue_825" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_alot_DeferredTaxAssetsDeferredServiceContractRevenue_825" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsCapitalization" xlink:label="loc_alot_DeferredTaxAssetsCapitalization_1399925" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_alot_DeferredTaxAssetsCapitalization_1399925" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="loc_us-gaap_DeferredTaxAssetsOther_828" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_us-gaap_DeferredTaxAssetsOther_828" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_829" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAbstract_816" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_829" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract" xlink:label="loc_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract_817" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_815" xlink:to="loc_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract_817" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_831" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract_817" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_831" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_830" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract_817" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_830" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability" xlink:label="loc_alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability_880358" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract_817" xlink:to="loc_alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability_880358" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther_832" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract_817" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesOther_832" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_833" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract_817" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_833" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsLiabilitiesGross" xlink:label="loc_alot_DeferredTaxAssetsLiabilitiesGross_834" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_815" xlink:to="loc_alot_DeferredTaxAssetsLiabilitiesGross_834" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_835" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_815" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_835" use="optional" order="24" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_836" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_815" xlink:to="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_836" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:label="loc_us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract_1395217" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_815" xlink:to="loc_us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract_1395217" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_1395223" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract_1395217" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_1395223" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="loc_us-gaap_DeferredTaxLiabilities_1395226" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract_1395217" xlink:to="loc_us-gaap_DeferredTaxLiabilities_1395226" use="optional" order="28" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_1395230" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract_1395217" xlink:to="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_1395230" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesParentheticalDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_1399985" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_IncreaseDecreaseInDeferredTaxAssets" xlink:label="loc_alot_IncreaseDecreaseInDeferredTaxAssets_1399986" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_1399985" xlink:to="loc_alot_IncreaseDecreaseInDeferredTaxAssets_1399986" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_838" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits_839" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_838" xlink:to="loc_us-gaap_UnrecognizedTaxBenefits_839" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_840" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_838" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_840" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_841" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_838" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_841" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_842" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_838" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_842" use="optional" order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits_843" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_838" xlink:to="loc_us-gaap_UnrecognizedTaxBenefits_843" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_789" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_657044" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_789" xlink:to="loc_us-gaap_StatementTable_657044" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_657048" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_657044" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_657048" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_657049" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_657048" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_657049" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticCountryMember" xlink:label="loc_us-gaap_DomesticCountryMember_657051" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_657049" xlink:to="loc_us-gaap_DomesticCountryMember_657051" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_887980" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_657044" xlink:to="loc_srt_StatementGeographicalAxis_887980" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_887981" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_887980" xlink:to="loc_srt_SegmentGeographicalDomain_887981" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_CN" xlink:label="loc_country_CN_887982" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_887981" xlink:to="loc_country_CN_887982" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/stpr/2022/stpr-2022.xsd#stpr_DE" xlink:label="loc_stpr_DE_887984" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_887981" xlink:to="loc_stpr_DE_887984" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_887997" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_657044" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_887997" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_887999" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_887997" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_887999" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOfIncomeTaxBenefitAxis" xlink:label="loc_alot_DetailsOfIncomeTaxBenefitAxis_1086532" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_657044" xlink:to="loc_alot_DetailsOfIncomeTaxBenefitAxis_1086532" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DetailsOfIncomeTaxBenefitDomain" xlink:label="loc_alot_DetailsOfIncomeTaxBenefitDomain_1086533" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_DetailsOfIncomeTaxBenefitAxis_1086532" xlink:to="loc_alot_DetailsOfIncomeTaxBenefitDomain_1086533" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_AdditionalForeignTaxCreditMember" xlink:label="loc_alot_AdditionalForeignTaxCreditMember_1396029" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_DetailsOfIncomeTaxBenefitDomain_1086533" xlink:to="loc_alot_AdditionalForeignTaxCreditMember_1396029" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TaxCreditsCarryForwardsMember" xlink:label="loc_alot_TaxCreditsCarryForwardsMember_1396034" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_alot_DetailsOfIncomeTaxBenefitDomain_1086533" xlink:to="loc_alot_TaxCreditsCarryForwardsMember_1396034" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_657047" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_657044" xlink:to="loc_us-gaap_StatementLineItems_657047" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_793" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_793" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_794" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_794" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense_796" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense_796" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_797" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_797" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_887985" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_887985" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod" xlink:label="loc_alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod_887986" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod_887986" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_887992" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_887992" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod" xlink:label="loc_alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod_887995" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod_887995" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignEarningsRepatriated" xlink:label="loc_us-gaap_ForeignEarningsRepatriated_798" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_ForeignEarningsRepatriated_798" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits_653711" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_UnrecognizedTaxBenefits_653711" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign_1388970" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign_1388970" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_1399930" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_657047" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_1399930" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_845" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_846" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_845" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_846" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_849" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_846" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_849" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_847" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_849" xlink:to="loc_us-gaap_SegmentDomain_847" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TestAndMeasurementMember" xlink:label="loc_alot_TestAndMeasurementMember_850" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_847" xlink:to="loc_alot_TestAndMeasurementMember_850" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProductIdentificationMember" xlink:label="loc_alot_ProductIdentificationMember_851" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_847" xlink:to="loc_alot_ProductIdentificationMember_851" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_848" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_846" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_848" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportableSegments" xlink:label="loc_us-gaap_NumberOfReportableSegments_852" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_848" xlink:to="loc_us-gaap_NumberOfReportableSegments_852" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_NumberOfCustomersAccountingForCreditRisk" xlink:label="loc_alot_NumberOfCustomersAccountingForCreditRisk_853" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_848" xlink:to="loc_alot_NumberOfCustomersAccountingForCreditRisk_853" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_854" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_848" xlink:to="loc_us-gaap_Goodwill_854" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_856" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_859" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_856" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_859" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_857" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_859" xlink:to="loc_srt_ConsolidationItemsAxis_857" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_858" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_857" xlink:to="loc_srt_ConsolidationItemsDomain_858" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember" xlink:label="loc_us-gaap_OperatingSegmentsMember_863" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_858" xlink:to="loc_us-gaap_OperatingSegmentsMember_863" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember_864" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_858" xlink:to="loc_us-gaap_CorporateNonSegmentMember_864" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_862" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_859" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_862" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_860" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_862" xlink:to="loc_us-gaap_SegmentDomain_860" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProductIdentificationMember" xlink:label="loc_alot_ProductIdentificationMember_865" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_860" xlink:to="loc_alot_ProductIdentificationMember_865" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TestAndMeasurementMember" xlink:label="loc_alot_TestAndMeasurementMember_866" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_860" xlink:to="loc_alot_TestAndMeasurementMember_866" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_861" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_859" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_861" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_867" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_867" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_868" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_868" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_869" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_OperatingIncomeLoss_869" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense_870" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_NonoperatingIncomeExpense_870" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_PercentageOfOperatingProfitToNetSales" xlink:label="loc_alot_PercentageOfOperatingProfitToNetSales_871" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_alot_PercentageOfOperatingProfitToNetSales_871" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_872" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_872" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_873" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_873" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/positiveLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_874" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_861" xlink:to="loc_us-gaap_NetIncomeLoss_874" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_876" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_879" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_876" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_879" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_877" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_879" xlink:to="loc_srt_ConsolidationItemsAxis_877" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_878" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_877" xlink:to="loc_srt_ConsolidationItemsDomain_878" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember" xlink:label="loc_us-gaap_OperatingSegmentsMember_883" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_878" xlink:to="loc_us-gaap_OperatingSegmentsMember_883" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember_884" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_878" xlink:to="loc_us-gaap_CorporateNonSegmentMember_884" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_882" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_879" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_882" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_880" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_882" xlink:to="loc_us-gaap_SegmentDomain_880" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_ProductIdentificationMember" xlink:label="loc_alot_ProductIdentificationMember_885" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_880" xlink:to="loc_alot_ProductIdentificationMember_885" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TestAndMeasurementMember" xlink:label="loc_alot_TestAndMeasurementMember_886" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_880" xlink:to="loc_alot_TestAndMeasurementMember_886" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_881" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_879" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_881" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_887" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_881" xlink:to="loc_us-gaap_Assets_887" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_888" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_881" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_888" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_889" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_881" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_889" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_891" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_893" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_891" xlink:to="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_893" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_895" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_893" xlink:to="loc_srt_StatementGeographicalAxis_895" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_894" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_895" xlink:to="loc_srt_SegmentGeographicalDomain_894" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="loc_country_US_898" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_894" xlink:to="loc_country_US_898" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EuropeMember" xlink:label="loc_srt_EuropeMember_899" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_894" xlink:to="loc_srt_EuropeMember_899" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AsiaMember" xlink:label="loc_srt_AsiaMember_900" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_894" xlink:to="loc_srt_AsiaMember_900" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_CA" xlink:label="loc_country_CA_901" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_894" xlink:to="loc_country_CA_901" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CentralAndSouthAmericaMember" xlink:label="loc_alot_CentralAndSouthAmericaMember_902" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_894" xlink:to="loc_alot_CentralAndSouthAmericaMember_902" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_OtherCountriesMember" xlink:label="loc_alot_OtherCountriesMember_903" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_894" xlink:to="loc_alot_OtherCountriesMember_903" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_892" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_893" xlink:to="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_892" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_896" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_892" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_896" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncurrentAssets" xlink:label="loc_us-gaap_NoncurrentAssets_897" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_892" xlink:to="loc_us-gaap_NoncurrentAssets_897" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/EmployeeBenefitPlansAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PostemploymentBenefitsAbstract" xlink:label="loc_us-gaap_PostemploymentBenefitsAbstract_905" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_907" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PostemploymentBenefitsAbstract_905" xlink:to="loc_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_907" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ProductWarrantyLiabilityActivityInProductWarrantyLiabilityDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_909" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_910" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_909" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_910" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:label="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued_911" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_909" xlink:to="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued_911" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualPayments" xlink:label="loc_us-gaap_ProductWarrantyAccrualPayments_912" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_909" xlink:to="loc_us-gaap_ProductWarrantyAccrualPayments_912" use="optional" order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_913" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_909" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_913" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ProductWarrantyLiabilityAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_1395251" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_Reimbursementreceivedfromvendor" xlink:label="loc_alot_Reimbursementreceivedfromvendor_1395253" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_1395251" xlink:to="loc_alot_Reimbursementreceivedfromvendor_1395253" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RisksAndUncertaintiesAbstract" xlink:label="loc_us-gaap_RisksAndUncertaintiesAbstract_915" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTable" xlink:label="loc_us-gaap_ConcentrationRiskTable_920" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RisksAndUncertaintiesAbstract_915" xlink:to="loc_us-gaap_ConcentrationRiskTable_920" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_918" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_920" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_918" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_921" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_918" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_921" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplierConcentrationRiskMember" xlink:label="loc_us-gaap_SupplierConcentrationRiskMember_925" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_921" xlink:to="loc_us-gaap_SupplierConcentrationRiskMember_925" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_917" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_920" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_917" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_916" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_917" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_916" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsTotalMember" xlink:label="loc_us-gaap_CostOfGoodsTotalMember_922" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_916" xlink:to="loc_us-gaap_CostOfGoodsTotalMember_922" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_TradeAccountsPayablesMember" xlink:label="loc_alot_TradeAccountsPayablesMember_923" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_916" xlink:to="loc_alot_TradeAccountsPayablesMember_923" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_1396216" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_920" xlink:to="loc_srt_MajorCustomersAxis_1396216" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_1396217" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_1396216" xlink:to="loc_srt_NameOfMajorCustomerDomain_1396217" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="alot-20230131.xsd#alot_CustomerMember" xlink:label="loc_alot_CustomerMember_1396221" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_1396217" xlink:to="loc_alot_CustomerMember_1396221" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_919" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_920" xlink:to="loc_us-gaap_ConcentrationRiskLineItems_919" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_924" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_919" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_924" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/CommitmentsAndContingenciesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_936" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PurchaseObligation" xlink:label="loc_us-gaap_PurchaseObligation_1399987" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_936" xlink:to="loc_us-gaap_PurchaseObligation_1399987" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PurchaseObligationDueInNextTwelveMonths" xlink:label="loc_us-gaap_PurchaseObligationDueInNextTwelveMonths_1399988" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_936" xlink:to="loc_us-gaap_PurchaseObligationDueInNextTwelveMonths_1399988" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_993" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByBalanceSheetGroupingTable" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable_995" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_993" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTable_995" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByMeasurementBasisAxis" xlink:label="loc_us-gaap_FairValueByMeasurementBasisAxis_997" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_995" xlink:to="loc_us-gaap_FairValueByMeasurementBasisAxis_997" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PortionAtFairValueFairValueDisclosureMember" xlink:label="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_441036" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByMeasurementBasisAxis_997" xlink:to="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_441036" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EstimateOfFairValueFairValueDisclosureMember" xlink:label="loc_us-gaap_EstimateOfFairValueFairValueDisclosureMember_441037" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_441036" xlink:to="loc_us-gaap_EstimateOfFairValueFairValueDisclosureMember_441037" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CarryingReportedAmountFairValueDisclosureMember" xlink:label="loc_us-gaap_CarryingReportedAmountFairValueDisclosureMember_441038" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_441036" xlink:to="loc_us-gaap_CarryingReportedAmountFairValueDisclosureMember_441038" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_996" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_995" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_996" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_999" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_996" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_999" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_1004" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_999" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_1004" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_994" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_995" xlink:to="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_994" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="loc_us-gaap_DebtLongtermAndShorttermCombinedAmount_1000" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_994" xlink:to="loc_us-gaap_DebtLongtermAndShorttermCombinedAmount_1000" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail">
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsAbstract" xlink:label="loc_srt_ValuationAndQualifyingAccountsAbstract_1024" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsDisclosureTable" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_1028" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ValuationAndQualifyingAccountsAbstract_1024" xlink:to="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_1028" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_1026" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_1028" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_1026" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_1025" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_1026" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_1025" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForCreditLossMember" xlink:label="loc_us-gaap_AllowanceForCreditLossMember_1029" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_1025" xlink:to="loc_us-gaap_AllowanceForCreditLossMember_1029" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ValuationAndQualifyingAccountsDisclosureLineItems" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_1027" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_1028" xlink:to="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_1027" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_1030" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_1027" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_1030" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_1031" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_1027" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_1031" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesDeductions" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDeductions_1032" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_1027" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDeductions_1032" use="optional" order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_1033" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_1027" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_1033" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
</presentationLink>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823641504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover Page - 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>Jan. 31, 2023</div></th>
<th class="th"><div>Apr. 12, 2023</div></th>
<th class="th"><div>Jul. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Jan. 31,  2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">AstroNova, Inc.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000008146<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--01-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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">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="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">ALOT<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">RI<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">0-13200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">05-0318215<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">600 East Greenwich Avenue<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">West Warwick<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">02893<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">RI<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">401<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">828-4000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,400,560<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 84,333,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AuditorName', window );">Auditor Name</a></td>
<td class="text">Wolf & Company, P.C.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AuditorFirmId', window );">Auditor Firm ID</a></td>
<td class="text">392<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AuditorLocation', window );">Auditor Location</a></td>
<td class="text">Boston, MA<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AuditorFirmId">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>PCAOB issued Audit Firm Identifier</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentAnnualReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an annual report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityPublicFloat">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityVoluntaryFilers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' 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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229819508176">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>CURRENT ASSETS</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and Cash Equivalents</a></td>
<td class="nump">$ 3,946<span></span>
</td>
<td class="nump">$ 5,276<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts Receivable, net of reserves of $731 in 2023 and $826 in 2022</a></td>
<td class="nump">21,598<span></span>
</td>
<td class="nump">17,124<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">51,324<span></span>
</td>
<td class="nump">34,609<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_ErcReceivables', window );">Employee Retention Credit Receivable</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">3,135<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid Expenses and Other Current Assets</a></td>
<td class="nump">2,894<span></span>
</td>
<td class="nump">3,634<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total Current Assets</a></td>
<td class="nump">79,762<span></span>
</td>
<td class="nump">63,778<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, net</a></td>
<td class="nump">14,288<span></span>
</td>
<td class="nump">11,441<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Identifiable Intangibles, net</a></td>
<td class="nump">21,232<span></span>
</td>
<td class="nump">19,200<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">14,658<span></span>
</td>
<td class="nump">12,156<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred Tax Assets, net</a></td>
<td class="nump">6,907<span></span>
</td>
<td class="nump">5,591<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right of Use Asset</a></td>
<td class="nump">794<span></span>
</td>
<td class="nump">1,094<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsMiscellaneousNoncurrent', window );">Other Assets</a></td>
<td class="nump">1,566<span></span>
</td>
<td class="nump">1,695<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">TOTAL ASSETS</a></td>
<td class="nump">139,207<span></span>
</td>
<td class="nump">114,955<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>CURRENT LIABILITIES</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts Payable</a></td>
<td class="nump">8,618<span></span>
</td>
<td class="nump">8,590<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeRelatedLiabilitiesCurrent', window );">Accrued Compensation</a></td>
<td class="nump">2,750<span></span>
</td>
<td class="nump">3,512<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Other Accrued Expenses</a></td>
<td class="nump">3,308<span></span>
</td>
<td class="nump">4,113<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Revolving Line of Credit</a></td>
<td class="nump">15,900<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Current Portion of Long-Term Debt</a></td>
<td class="nump">2,100<span></span>
</td>
<td class="nump">1,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyObligationCurrent', window );">Current Liability&#8212;Royalty Obligation</a></td>
<td class="nump">1,725<span></span>
</td>
<td class="nump">2,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue', window );">Current Liability&#8212;Excess Royalty Payment Due</a></td>
<td class="nump">423<span></span>
</td>
<td class="nump">235<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesCurrent', window );">Income Taxes Payable</a></td>
<td class="nump">786<span></span>
</td>
<td class="nump">323<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredRevenueCurrent', window );">Deferred Revenue</a></td>
<td class="nump">1,888<span></span>
</td>
<td class="nump">262<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total Current Liabilities</a></td>
<td class="nump">37,498<span></span>
</td>
<td class="nump">20,035<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesNoncurrentAbstract', window );"><strong>NON-CURRENT&#160;LIABILITIES</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long-Term Debt, net of current portion</a></td>
<td class="nump">12,040<span></span>
</td>
<td class="nump">8,154<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyObligationNonCurrent', window );">Royalty Obligation, net of current portion</a></td>
<td class="nump">3,415<span></span>
</td>
<td class="nump">4,361<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Lease Liabilities, net of current portion</a></td>
<td class="nump">555<span></span>
</td>
<td class="nump">808<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxesPayableCurrentAndNoncurrent', window );">Income Taxes Payable</a></td>
<td class="nump">491<span></span>
</td>
<td class="nump">399<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredRevenueNoncurrent', window );">Deferred Revenue</a></td>
<td class="nump">674<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred Tax Liabilities</a></td>
<td class="nump">167<span></span>
</td>
<td class="nump">186<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">TOTAL LIABILITIES</a></td>
<td class="nump">54,840<span></span>
</td>
<td class="nump">33,943<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and Contingencies</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>SHAREHOLDERS' EQUITY</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred Stock</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="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common Stock</a></td>
<td class="nump">534<span></span>
</td>
<td class="nump">528<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapitalCommonStock', window );">Additional&#160;Paid-in&#160;Capital</a></td>
<td class="nump">61,131<span></span>
</td>
<td class="nump">59,692<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained Earnings</a></td>
<td class="nump">59,175<span></span>
</td>
<td class="nump">56,514<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValue', window );">Treasury Stock, at Cost</a></td>
<td class="num">(34,235)<span></span>
</td>
<td class="num">(33,974)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated Other Comprehensive Loss, net of tax</a></td>
<td class="num">(2,238)<span></span>
</td>
<td class="num">(1,748)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">TOTAL SHAREHOLDERS' EQUITY</a></td>
<td class="nump">84,367<span></span>
</td>
<td class="nump">81,012<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">TOTAL LIABILITIES AND SHAREHOLDERS' EQUITY</a></td>
<td class="nump">$ 139,207<span></span>
</td>
<td class="nump">$ 114,955<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accrued royalties in excess of guaranteed minimum royalty obligation- amount due within one year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_ErcReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount receivable for Employee Retention Credit .</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_ErcReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_RoyaltyObligationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount of the short term portion of the guaranteed minimum royalty obligation related to Honeywell Agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RoyaltyObligationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_RoyaltyObligationNonCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount of the long term portion of the guaranteed minimum royalty obligation related to Honeywell Agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RoyaltyObligationNonCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://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 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AccruedIncomeTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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)(15)(b)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<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(15)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedIncomeTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.</p></div>
<a href="javascript:void(0);" onclick="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(30)(a)(4))<br> -URI https://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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<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)(3))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<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 https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 6: 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)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e681-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapitalCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapitalCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<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)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 20: 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 https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<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 https://asc.fasb.org/extlink&amp;oid=126975872&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 23: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<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 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-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 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<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)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<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 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<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 https://asc.fasb.org/extlink&amp;oid=126975872&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 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<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)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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 https://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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-108585<br><br>Reference 2: 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 (a)<br> -URI https://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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredRevenueCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredRevenueCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredRevenueNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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)(c))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredRevenueNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeRelatedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeRelatedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: 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(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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(6))<br> -URI https://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 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6904-107765<br><br>Reference 21: 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesNoncurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesNoncurrentAbstract</td>
</tr>
<tr>
<td style="padding-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_LinesOfCreditCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The carrying value as of the balance sheet date of the current portion 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="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(13))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LinesOfCreditCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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,20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherAssetsMiscellaneousNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of other miscellaneous assets expected to be realized or consumed after one year or normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsMiscellaneousNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cumulative amount of the reporting entity's undistributed earnings or deficit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://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 https://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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&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 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxesPayableCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://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(15)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&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(a)(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxesPayableCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_TreasuryStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=6405834&amp;loc=d3e23315-112656<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,30)<br> -URI https://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 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>15
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229822767200">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts Receivable, Reserves</a></td>
<td class="nump">$ 731<span></span>
</td>
<td class="nump">$ 826<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred Stock, Par Value</a></td>
<td class="nump">$ 10<span></span>
</td>
<td class="nump">$ 10<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred Stock, Shares Authorized</a></td>
<td class="nump">100,000<span></span>
</td>
<td class="nump">100,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred Stock, Shares Issued</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="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common Stock, Par Value</a></td>
<td class="nump">$ 0.05<span></span>
</td>
<td class="nump">$ 0.05<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common Stock, Shares Authorized</a></td>
<td class="nump">13,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common Stock, Shares Issued</a></td>
<td class="nump">10,676,851<span></span>
</td>
<td class="nump">10,566,404<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockShares', window );">Treasury Stock, Shares</a></td>
<td class="nump">3,342,032<span></span>
</td>
<td class="nump">3,324,280<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="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_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-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_PreferredStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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,30)<br> -URI https://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 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockShares</td>
</tr>
<tr>
<td style="padding-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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229820230864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Income - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>Income Statement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 142,527<span></span>
</td>
<td class="nump">$ 117,480<span></span>
</td>
<td class="nump">$ 116,033<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of Revenue</a></td>
<td class="nump">94,371<span></span>
</td>
<td class="nump">73,741<span></span>
</td>
<td class="nump">74,673<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross Profit</a></td>
<td class="nump">48,156<span></span>
</td>
<td class="nump">43,739<span></span>
</td>
<td class="nump">41,360<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingCostsAndExpensesAbstract', window );"><strong>Costs and Expenses:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingAndMarketingExpense', window );">Selling and Marketing</a></td>
<td class="nump">24,456<span></span>
</td>
<td class="nump">23,177<span></span>
</td>
<td class="nump">23,301<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Research and Development</a></td>
<td class="nump">6,822<span></span>
</td>
<td class="nump">6,753<span></span>
</td>
<td class="nump">6,206<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and Administrative</a></td>
<td class="nump">11,435<span></span>
</td>
<td class="nump">9,553<span></span>
</td>
<td class="nump">9,420<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Operating Expenses</a></td>
<td class="nump">42,713<span></span>
</td>
<td class="nump">39,483<span></span>
</td>
<td class="nump">38,927<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating Income</a></td>
<td class="nump">5,443<span></span>
</td>
<td class="nump">4,256<span></span>
</td>
<td class="nump">2,433<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpenseAbstract', window );"><strong>Other Income (Expense):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest Expense</a></td>
<td class="num">(1,678)<span></span>
</td>
<td class="num">(677)<span></span>
</td>
<td class="num">(955)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Gain (Loss) on Foreign Currency Transactions</a></td>
<td class="num">(474)<span></span>
</td>
<td class="num">(288)<span></span>
</td>
<td class="nump">590<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Gain on Extinguishment of Debt &#8211; PPP Loan</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">4,466<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Loss on Disposal of Assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(696)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other, net</a></td>
<td class="nump">119<span></span>
</td>
<td class="num">(27)<span></span>
</td>
<td class="nump">111<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Other Income (Expense), net</a></td>
<td class="num">(2,033)<span></span>
</td>
<td class="nump">2,778<span></span>
</td>
<td class="num">(254)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before Income Taxes</a></td>
<td class="nump">3,410<span></span>
</td>
<td class="nump">7,034<span></span>
</td>
<td class="nump">2,179<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income Tax Provision</a></td>
<td class="nump">749<span></span>
</td>
<td class="nump">605<span></span>
</td>
<td class="nump">895<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income</a></td>
<td class="nump">$ 2,661<span></span>
</td>
<td class="nump">$ 6,429<span></span>
</td>
<td class="nump">$ 1,284<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Net Income Per Common Share&#8212;Basic</a></td>
<td class="nump">$ 0.36<span></span>
</td>
<td class="nump">$ 0.89<span></span>
</td>
<td class="nump">$ 0.18<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Net Income Per Common Share&#8212;Diluted</a></td>
<td class="nump">$ 0.36<span></span>
</td>
<td class="nump">$ 0.88<span></span>
</td>
<td class="nump">$ 0.18<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted Average Number of Common Shares Outstanding&#8212;Basic</a></td>
<td class="nump">7,307<span></span>
</td>
<td class="nump">7,207<span></span>
</td>
<td class="nump">7,104<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment', window );">Dilutive Effect of Common Stock Equivalents</a></td>
<td class="nump">67<span></span>
</td>
<td class="nump">132<span></span>
</td>
<td class="nump">62<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted Average Number of Common Shares Outstanding&#8212;Diluted</a></td>
<td class="nump">7,374<span></span>
</td>
<td class="nump">7,339<span></span>
</td>
<td class="nump">7,166<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate cost of goods produced and sold and services rendered during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 3: 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 https://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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 5: 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)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<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 https://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 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: 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 https://asc.fasb.org/extlink&amp;oid=126975872&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://asc.fasb.org/extlink&amp;oid=128363288&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 https://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 https://asc.fasb.org/extlink&amp;oid=128363288&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&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 https://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 https://asc.fasb.org/extlink&amp;oid=128363288&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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.</p></div>
<a href="javascript:void(0);" onclick="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> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=125521441&amp;loc=d3e30690-110894<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 35<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123602790&amp;loc=d3e30226-110892<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=126980362&amp;loc=d3e28228-110885<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124440516&amp;loc=d3e30840-110895<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126972273&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126972273&amp;loc=d3e12317-112629<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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-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 https://asc.fasb.org/extlink&amp;oid=126901519&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 (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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 20<br> -Section 25<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126941158&amp;loc=d3e41242-110953<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 https://asc.fasb.org/extlink&amp;oid=126901519&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 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 7: 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(8))<br> -URI https://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 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 10: 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(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="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 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (210.5-03(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 5: 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.9)<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingCostsAndExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingCostsAndExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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.9)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs 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 whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 730<br> -Section 25<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6472174&amp;loc=d3e58812-109433<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-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 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130543-203045<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 https://asc.fasb.org/extlink&amp;oid=126901519&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-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 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<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 https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingAndMarketingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total amount of expenses directly related to the marketing or selling of products or services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingAndMarketingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment</td>
</tr>
<tr>
<td style="padding-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_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229822649920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Comprehensive Income - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Statement of Comprehensive Income [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income</a></td>
<td class="nump">$ 2,661<span></span>
</td>
<td class="nump">$ 6,429<span></span>
</td>
<td class="nump">$ 1,284<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract', window );"><strong>Other Comprehensive Income (Loss), net of taxes and reclassification adjustments:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign Currency Translation Adjustments</a></td>
<td class="num">(537)<span></span>
</td>
<td class="num">(1,426)<span></span>
</td>
<td class="nump">710<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax', window );">Change in Value of Derivatives Designated as Cash Flow Hedge</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(239)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax', window );">(Gains) Losses from Cash Flow Hedges Reclassified to Income Statement</a></td>
<td class="nump">47<span></span>
</td>
<td class="nump">62<span></span>
</td>
<td class="nump">193<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax', window );">Cross-Currency Interest Rate Swap Terminations</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">45<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other Comprehensive Income (Loss)</a></td>
<td class="num">(490)<span></span>
</td>
<td class="num">(1,364)<span></span>
</td>
<td class="nump">709<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Comprehensive Income</a></td>
<td class="nump">$ 2,171<span></span>
</td>
<td class="nump">$ 5,065<span></span>
</td>
<td class="nump">$ 1,993<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<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 45<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e557-108580<br><br>Reference 4: 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(26))<br> -URI https://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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<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 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and before reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<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 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of reclassification of gain (loss) from accumulated other comprehensive income (AOCI) for derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e689-108580<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 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and adjustments, of gain (loss) from increase (decrease) in value of excluded component of derivative designated and qualifying as hedge. Adjustments include, but are not limited to, reclassifications for sale and settlement, and amounts recognized under systematic and rational method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624171-113959<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 45<br> -Paragraph 10A<br> -Subparagraph (dd)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 5: 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(21))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=124507222&amp;loc=d3e1436-108581<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 10: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 11: 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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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(19))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-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>18
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823382832">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statements of Changes in Shareholders' Equity - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Total</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>Treasury Stock [Member]</div></th>
<th class="th"><div>Accumulated Other Comprehensive Income (Loss) [Member]</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance at Jan. 31, 2020</a></td>
<td class="nump">$ 71,375<span></span>
</td>
<td class="nump">$ 517<span></span>
</td>
<td class="nump">$ 56,130<span></span>
</td>
<td class="nump">$ 49,298<span></span>
</td>
<td class="num">$ (33,477)<span></span>
</td>
<td class="num">$ (1,093)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Beginning Balance, Shares at Jan. 31, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,343,610<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Share-Based Compensation</a></td>
<td class="nump">1,819<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,819<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Employee Option Exercises</a></td>
<td class="nump">$ 104<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">103<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Employee Option Exercises, Shares</a></td>
<td class="nump">1,200<span></span>
</td>
<td class="nump">16,487<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross', window );">Restricted Stock Awards Vested, net</a></td>
<td class="num">$ (111)<span></span>
</td>
<td class="nump">$ 3<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(111)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross', window );">Restricted Stock Awards Vested, net, Shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">64,997<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStockCash', window );">Common Stock&#8212;Cash Dividend&#8212;$0.07 per share</a></td>
<td class="num">(497)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(497)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income</a></td>
<td class="nump">1,284<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,284<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other Comprehensive Income (Loss)</a></td>
<td class="nump">709<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">709<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance at Jan. 31, 2021</a></td>
<td class="nump">74,683<span></span>
</td>
<td class="nump">$ 521<span></span>
</td>
<td class="nump">58,049<span></span>
</td>
<td class="nump">50,085<span></span>
</td>
<td class="num">(33,588)<span></span>
</td>
<td class="num">(384)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending Balance, Shares at Jan. 31, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,425,094<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Share-Based Compensation</a></td>
<td class="nump">1,493<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,493<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Employee Option Exercises</a></td>
<td class="nump">$ 157<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">156<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Employee Option Exercises, Shares</a></td>
<td class="nump">6,425<span></span>
</td>
<td class="nump">14,371<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross', window );">Restricted Stock Awards Vested, net</a></td>
<td class="num">$ (386)<span></span>
</td>
<td class="nump">$ 6<span></span>
</td>
<td class="num">(6)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(386)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross', window );">Restricted Stock Awards Vested, net, Shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">126,939<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income</a></td>
<td class="nump">6,429<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,429<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other Comprehensive Income (Loss)</a></td>
<td class="num">(1,364)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,364)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance at Jan. 31, 2022</a></td>
<td class="nump">81,012<span></span>
</td>
<td class="nump">$ 528<span></span>
</td>
<td class="nump">59,692<span></span>
</td>
<td class="nump">56,514<span></span>
</td>
<td class="num">(33,974)<span></span>
</td>
<td class="num">(1,748)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending Balance, Shares at Jan. 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,566,404<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Share-Based Compensation</a></td>
<td class="nump">1,290<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,290<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Employee Option Exercises</a></td>
<td class="nump">$ 155<span></span>
</td>
<td class="nump">$ 2<span></span>
</td>
<td class="nump">153<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Employee Option Exercises, Shares</a></td>
<td class="nump">42,944<span></span>
</td>
<td class="nump">25,123<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross', window );">Restricted Stock Awards Vested, net</a></td>
<td class="num">$ (261)<span></span>
</td>
<td class="nump">$ 4<span></span>
</td>
<td class="num">(4)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(261)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross', window );">Restricted Stock Awards Vested, net, Shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85,324<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income</a></td>
<td class="nump">2,661<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,661<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other Comprehensive Income (Loss)</a></td>
<td class="num">(490)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(490)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance at Jan. 31, 2023</a></td>
<td class="nump">$ 84,367<span></span>
</td>
<td class="nump">$ 534<span></span>
</td>
<td class="nump">$ 61,131<span></span>
</td>
<td class="nump">$ 59,175<span></span>
</td>
<td class="num">$ (34,235)<span></span>
</td>
<td class="num">$ (2,238)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending Balance, Shares at Jan. 31, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,676,851<span></span>
</td>
<td class="text">&#160;<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_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DividendsCommonStockCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of paid and unpaid common stock dividends declared with the form of settlement in cash.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsCommonStockCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 5: 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(21))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=124507222&amp;loc=d3e1436-108581<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 10: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 11: 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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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(19))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued which are neither cancelled nor held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesOutstanding</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesRestrictedStockAwardGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of shares issued during the period, including shares forfeited, as a result of Restricted Stock Awards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodValueRestrictedStockAwardGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate value of stock related to Restricted Stock Awards issued during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<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(28))<br> -URI https://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(29))<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StockIssuedDuringPeriodValueStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value of stock issued as a result of the exercise of stock options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>19
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229907839152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Changes in Shareholders' Equity (Parenthetical)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jan. 31, 2021 </div>
<div>$ / shares</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfStockholdersEquityAbstract', window );"><strong>Statement of Stockholders' Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockDividendsPerShareCashPaid', window );">Cash dividend per share</a></td>
<td class="nump">$ 0.07<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_CommonStockDividendsPerShareCashPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate dividends paid during the period for each share of common stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareCashPaid</td>
</tr>
<tr>
<td style="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_StatementOfStockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfStockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-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>20
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229819439248">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net Income</a></td>
<td class="nump">$ 2,661<span></span>
</td>
<td class="nump">$ 6,429<span></span>
</td>
<td class="nump">$ 1,284<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to Reconcile Net Income to Net Cash (Used) Provided By Operating Activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and Amortization</a></td>
<td class="nump">3,916<span></span>
</td>
<td class="nump">3,994<span></span>
</td>
<td class="nump">5,983<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfFinancingCosts', window );">Amortization of Debt Issuance Costs</a></td>
<td class="nump">25<span></span>
</td>
<td class="nump">44<span></span>
</td>
<td class="nump">75<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-Based Compensation</a></td>
<td class="nump">1,290<span></span>
</td>
<td class="nump">1,493<span></span>
</td>
<td class="nump">1,819<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Loss on Disposal of Assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">696<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Gain on Extinguishment of Debt</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(4,466)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxesAndTaxCredits', window );">Deferred Income Tax Provision (Benefit)</a></td>
<td class="num">(1,336)<span></span>
</td>
<td class="nump">210<span></span>
</td>
<td class="num">(1,021)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in Assets and Liabilities, net of impact of acquisition:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts Receivable</a></td>
<td class="num">(1,234)<span></span>
</td>
<td class="nump">77<span></span>
</td>
<td class="nump">2,702<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_OtherEmployeeRetentionCreditReceivable', window );">Other Receivable &#8211; Employee Retention Credit Receivable</a></td>
<td class="nump">3,135<span></span>
</td>
<td class="num">(3,135)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(11,581)<span></span>
</td>
<td class="num">(4,883)<span></span>
</td>
<td class="nump">4,247<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities', window );">Accounts Payable and Accrued Expenses</a></td>
<td class="num">(3,236)<span></span>
</td>
<td class="nump">4,052<span></span>
</td>
<td class="num">(57)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable', window );">Income Taxes Payable</a></td>
<td class="nump">1,710<span></span>
</td>
<td class="num">(2,043)<span></span>
</td>
<td class="nump">1,482<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet', window );">Other</a></td>
<td class="nump">1,714<span></span>
</td>
<td class="num">(1,074)<span></span>
</td>
<td class="num">(970)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net Cash Provided (Used) by Operating Activities</a></td>
<td class="num">(2,936)<span></span>
</td>
<td class="nump">1,394<span></span>
</td>
<td class="nump">15,544<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash Flows from Investing Activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Cash Paid for Astro Machine Acquisition, net of cash acquired</a></td>
<td class="num">(17,034)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Additions to Property, Plant and Equipment</a></td>
<td class="num">(229)<span></span>
</td>
<td class="num">(1,796)<span></span>
</td>
<td class="num">(2,587)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net Cash Used by Investing Activities</a></td>
<td class="num">(17,263)<span></span>
</td>
<td class="num">(1,796)<span></span>
</td>
<td class="num">(2,587)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash Flows from Financing Activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions', window );">Net Cash Proceeds from Employee Stock Option Plans</a></td>
<td class="nump">85<span></span>
</td>
<td class="nump">60<span></span>
</td>
<td class="nump">9<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromStockPlans', window );">Net Cash Proceeds from Share Purchases under Employee Stock Purchase Plan</a></td>
<td class="nump">70<span></span>
</td>
<td class="nump">96<span></span>
</td>
<td class="nump">95<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Net Cash Used for Payment of Taxes Related to Vested Restricted Stock</a></td>
<td class="num">(261)<span></span>
</td>
<td class="num">(386)<span></span>
</td>
<td class="num">(111)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit', window );">Net (Repayments)/Borrowings under Revolving Credit Facility</a></td>
<td class="nump">15,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(6,500)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_PaymentsOfMinimumGuaranteeRoyaltyObligation', window );">Payment of Minimum Guarantee Royalty Obligation</a></td>
<td class="num">(2,000)<span></span>
</td>
<td class="num">(2,000)<span></span>
</td>
<td class="num">(2,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan', window );">Proceeds from Long-Term Debt &#8211; PPP Loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,422<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfLongTermDebt', window );">Proceeds from Long-Term Debt Borrowings</a></td>
<td class="nump">6,000<span></span>
</td>
<td class="nump">10,000<span></span>
</td>
<td class="nump">15,232<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfOtherLongTermDebt', window );">Payoff of Long-Term Debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(12,576)<span></span>
</td>
<td class="num">(11,732)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfMediumTermNotes', window );">Principal Payments on Long-Term Debt</a></td>
<td class="num">(1,000)<span></span>
</td>
<td class="num">(750)<span></span>
</td>
<td class="num">(3,958)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfDebtIssuanceCosts', window );">Payments of Debt Issuance Costs</a></td>
<td class="num">(39)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(100)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfDividendsCommonStock', window );">Dividends Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(497)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net Cash Provided (Used) by Financing Activities</a></td>
<td class="nump">18,755<span></span>
</td>
<td class="num">(5,556)<span></span>
</td>
<td class="num">(5,140)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Effect of Foreign Exchange Rate Changes on Cash and Cash Equivalents</a></td>
<td class="nump">114<span></span>
</td>
<td class="num">(205)<span></span>
</td>
<td class="num">(627)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net Increase (Decrease) in Cash and Cash Equivalents</a></td>
<td class="num">(1,330)<span></span>
</td>
<td class="num">(6,163)<span></span>
</td>
<td class="nump">7,190<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and Cash Equivalents, Beginning of Year</a></td>
<td class="nump">5,276<span></span>
</td>
<td class="nump">11,439<span></span>
</td>
<td class="nump">4,249<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and Cash Equivalents, End of Year</a></td>
<td class="nump">3,946<span></span>
</td>
<td class="nump">5,276<span></span>
</td>
<td class="nump">11,439<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowInformationAbstract', window );"><strong>Supplemental Information:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Cash Paid During the Period for Interest</a></td>
<td class="nump">791<span></span>
</td>
<td class="nump">342<span></span>
</td>
<td class="nump">677<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Cash Paid During the Period for Income Taxes, Net of Refunds</a></td>
<td class="nump">311<span></span>
</td>
<td class="nump">$ 2,414<span></span>
</td>
<td class="nump">$ 446<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract', window );"><strong>Non-Cash Transactions:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment', window );">Reclassifcation of Inventories to Property, Plant and Equipment</a></td>
<td class="nump">348<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement', window );">Recognize intangible asset and royalty payable related to Honeywell Asset Purchase and License Agreement</a></td>
<td class="nump">$ 530<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_alot_OtherEmployeeRetentionCreditReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount currently receivable for refundable payroll taxes to be received from the Employee Retention Credit granted under the CARES act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_OtherEmployeeRetentionCreditReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_PaymentsOfMinimumGuaranteeRoyaltyObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash Outflow of Minimum Guarantee Royalty Obligation</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_PaymentsOfMinimumGuaranteeRoyaltyObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from issuance of paycheck protection program loan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Reclassifcation of inventories to property, plant and equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Recognition of intangible asset and royalty payable related to asset purchase and license agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfFinancingCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense attributable to debt issuance costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&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 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<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 1F<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495355-112611<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfFinancingCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6613-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-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 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=SL98516268-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredIncomeTaxesAndTaxCredits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) and income tax credits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxesAndTaxCredits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123444420&amp;loc=d3e33268-110906<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126972273&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126972273&amp;loc=d3e12317-112629<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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4297-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncreaseDecreaseInAccruedIncomeTaxesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating assets after deduction of operating liabilities classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4297-108586<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 17<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3367-108585<br><br>Reference 3: 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 25<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3536-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncashInvestingAndFinancingItemsAbstract</td>
</tr>
<tr>
<td style="padding-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_PaymentsOfDebtIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDebtIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PaymentsOfDividendsCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDividendsCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromIssuanceOfLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from issuance of shares under share-based payment arrangement. Includes, but is not limited to, option exercised.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromRepaymentsOfLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net cash inflow or cash outflow from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with either short term or long term maturity that is collateralized (backed by pledge, mortgage or other lien in the entity's assets).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromRepaymentsOfLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromStockPlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the amount received from the stock plan during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromStockPlans</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 3: 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 1A<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<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 https://asc.fasb.org/extlink&amp;oid=126975872&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)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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 https://asc.fasb.org/extlink&amp;oid=126732423&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3000-108585<br><br>Reference 15: 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 19<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569616-111683<br><br>Reference 16: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: 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 https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<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 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 25: 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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 26: 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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 27: 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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 28: 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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 29: 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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 30: 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 1A<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI https://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI https://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RepaymentsOfMediumTermNotes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow to pay off borrowing used to receive debt funding on a regular basis with maturities ranging from 5-10 years.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfMediumTermNotes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RepaymentsOfOtherLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for the payment of debt classified as other, maturing after one year or the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfOtherLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827061008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock', window );">Summary of Significant Accounting Policies</a></td>
<td class="text"> <div style="margin-top: 12pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 1&#8212;Summary of Significant Accounting Policies </div></div>  <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Basis of Presentation:</div></div> The accompanying financial statements and accompanying notes have been prepared by us pursuant to the rules and regulations of the U.S. Securities and Exchange Commission (&#8220;SEC&#8221;) and are presented in conformity with U.S. generally accepted accounting principles (&#8220;U.S. GAAP&#8221;). Our fiscal year end is January&#160;31. Unless otherwise stated, all years and dates refer to our fiscal year. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Principles of Consolidation: </div></div>The consolidated financial statements include the accounts of AstroNova, Inc. and its subsidiaries. All material intercompany accounts and transactions are eliminated in consolidation. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Reclassification: </div></div>Certain amounts in prior year&#8217;s financial statements have been reclassified to conform to the current year&#8217;s presentation. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Use of Estimates: </div></div>The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect these financial statements and accompanying notes using information that is reasonably available to us at this time. Some of the more significant estimates relate to revenue recognition; the allowances for doubtful accounts; inventory valuation; income taxes; valuation of long-lived assets, intangible assets and goodwill; share-based compensation; and warranty reserves. Management&#8217;s estimates are based on the facts and circumstances available at the time estimates are made, historical experience, risk of loss, general economic conditions and trends, and management&#8217;s assessments of the probable future outcome of these matters, including our expectations at the time<div style="letter-spacing: 0px; top: 0px;;display:inline;"> regarding</div> the ongoing impact from the <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">COVID-19</div> pandemic. Consequently, actual results could differ from those estimates. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Cash and Cash Equivalents:</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"> </div></div>Highly liquid investments with an original maturity of 90 days or less are considered to be cash equivalents. At<div style="letter-spacing: 0px; top: 0px;;display:inline;"> January</div>&#160;31, 2023 and 2022, $3.2&#160;million and $3.7&#160;million, respectively, was held in foreign bank accounts. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Inventories:</div></div> Inventories are stated at the lower of standard and average cost or net realizable value and include material, labor and manufacturing overhead. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Property, Plant and Equipment: </div></div><div style="letter-spacing: 0px; top: 0px;;display:inline;">Property</div>, plant and equipment are stated at cost less accumulated depreciation. Depreciation is provided on the straight-line basis over the estimated useful lives of the assets (land improvements&#8212;10 to 20 years; buildings and leasehold improvements&#8212;10 to 45 years; machinery and equipment&#8212;3 to 10 years and <div style="letter-spacing: 0px; top: 0px;;display:inline;">computer</div> equipment and software&#8212;3 to 10 years). </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Revenue Recognition: </div></div>We recognize revenue in accordance with Accounting Standards Codification (&#8220;ASC&#8221;) 606 &#8220;Revenue from Contracts with Customers (&#8220;ASC 606&#8221;).&#8221;&#160;The core principle of ASC&#160;606 is to recognize revenue when promised goods or services are transferred to customers in an amount that reflects the consideration that is expected to be received for those goods or services. ASC&#160;606 defines a five-step process to recognize revenue and requires judgment and estimates within the revenue recognition process, including identifying contracts with customers, identifying performance obligations in the contract, determining and estimating the amount of any variable consideration to include in the transaction price and allocating the transaction price to each separate performance obligation and recognizing revenue when the entity satisfies each performance obligation. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The vast majority of our revenue is generated from the sale of distinct products. Revenue is measured as the amount of consideration we expect to receive in exchange for such products, which is generally at the contractually stated prices, and is recognized when we satisfy a performance obligation by transferring control of </div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">a product to a customer. The transfer of control generally occurs at one point in time, upon shipment, when title and risk of loss pass to the customer. Returns and customer credits are infrequent and are recorded as a reduction to revenue. Sales taxes and value added taxes collected concurrently with revenue generating activities are excluded from revenue. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Many of the contracts entered into with customers are commonly comprised of a combination of equipment, supplies, installation and/or training services. We determine performance obligations by assessing whether the products or services are distinct from other elements of the contract. In order to be distinct, the product must perform either on its own or with readily available resources and must be separate within the context of the contract. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Most of our hardware products contain embedded operating systems and data management software which is included in the purchase price of the equipment. The software is deemed incidental to the systems as a whole, as it is not sold or marketed separately, and its production costs are minor compared to those of the hardware system. Hardware and software elements are typically delivered at the same time and are accounted for as a single performance obligation for which revenue is recognized at the point in time when ownership is transferred to the customer. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Installation and training services vary based on certain factors such as the complexity of the equipment, staffing availability in a geographic location and customer preferences, and can range from a few days to a few months. The delivery of installation and training services are not assessed to determine whether they are separate performance obligations, as the amounts are not material to the contract. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Shipping and handling activities that occur after control over a product has transferred to a customer are accounted for as fulfillment activities rather than performance obligations, as allowed under a practical expedient provided by ASC 606. The shipping and handling fees charged to customers are recognized as revenue and the related costs are included in cost of revenue at the point in time when ownership of the product is transferred to the customer. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We may perform services at the request of the customer, generally for the repair and maintenance of products previously sold. These services are short in duration and total approximately 5.0% and 4.4% of revenue for the years ended January&#160;31, 2023 and 2022, respectively. Revenue is recognized as services are rendered and accepted by the customer. We also provide service agreements on certain of our Product Identification equipment. Service agreements are purchased separately from the equipment and provide for the right to obtain service and maintenance on the equipment for a period of typically one to two years. Accordingly, revenue on these agreements is recognized over the term of the agreements.&#160;The portion of service agreement contracts that are uncompleted at the end of any reporting period are included in deferred revenue. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We generally provide warranties for our products. The standard warranty period is typically 12 months for most hardware products except for airborne printers, which typically have warranties that extend for <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">3-5</div> years, consistent with industry practice. Such assurance-type warranties are not deemed to be separate performance obligations from the hardware product and costs associated with providing the warranties are accrued in accordance with ASC 450, &#8220;Contingencies,&#8221; as we have the ability to ascertain the likelihood of the liability and can reasonably estimate the amount of the liability. Our estimate of costs to service the warranty obligations is based on historical experience and expectations of future conditions. To the extent that our experience in warranty claims or costs associated with servicing those claims differ from the original estimates, revisions to the estimated warranty liability are recorded at that time, with an offsetting adjustment to cost of revenue.&#160;On occasion, customers request a warranty period longer than our standard warranty. In those instances, in which extended warranty services are separately quoted to the customer, an additional performance obligation is created, and the associated revenue is deferred and recognized as service revenue ratably over the term of the extended warranty period. The portion of service contracts and extended warranty services agreements that are uncompleted at the end of any reporting period are included in deferred revenue. </div><div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/><div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We recognize and subsequently amortize an asset for the incremental direct costs of obtaining a contract with a customer if we expect the benefit of those costs to be longer than one year (Refer to Note 3, &#8220;Revenue Recognition&#8221; included in our notes to the consolidated financial statement). We apply the practical expedient to expense costs incurred for costs to obtain a contract when the amortization period would have been less than a year. These costs include sales commissions paid to the internal direct sales team as well as to third-party representatives and distributors.&#160;Contractual agreements with each of these parties outline commission structures and rates to be paid.&#160;Generally speaking, the contracts are all individual procurement decisions by the customers and do not include renewal provisions and, as such, the majority of the contracts have an economic life of significantly less than a year.</div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Accounts Receivables and Allowance for Doubtful Accounts: </div></div>Standard payment terms are typically 30&#160;days after shipment but vary by type and geographic location of our customer. Credit is extended based upon an evaluation of the customer&#8217;s financial condition. In circumstances where we are aware of a customer&#8217;s inability to meet its financial obligations, an allowance is established. The remainder of the allowance established is based on a variety of factors, including the age of amounts outstanding relative to their contractual due date, historical <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">write-off</div> experience and current market assessments. Accounts receivable are stated at their estimated net realizable value. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style:italic;display:inline;">Business Combinations: </div>We account for business acquisitions under the acquisition method of accounting in accordance with&#160;ASC 805, &#8216;&#8216;Business Combinations,&#8217;&#8217; where the total purchase price is allocated to the tangible and identified intangible assets acquired and liabilities assumed based on their estimated fair values. The purchase price is allocated using the information currently available, and may be adjusted, up to one year from acquisition date, after obtaining more information regarding, among other things, asset valuations, liabilities assumed and revisions to preliminary estimates. The purchase price in excess of the fair value of the tangible and identified intangible assets acquired less liabilities assumed is recognized as goodwill. Determining the fair value of assets acquired and liabilities assumed requires management to use significant judgment and estimates, including the selection of valuation methodologies, estimates of future revenue, costs and cash flows, discount rates, and selection of comparable companies. Management&#8217;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and unpredictable. As a result, actual results may differ from these estimates. During the measurement period, we may record adjustments to acquired assets and assumed liabilities, with corresponding offsets to goodwill. Upon the conclusion of a measurement period, any subsequent adjustments are recorded to earnings. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">At the acquisition date, the Company measures the fair values of all assets acquired and liabilities assumed that arise from contractual contingencies. The Company also measures the fair values of all <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-contractual</div> contingencies if, as of the acquisitions date, it is more likely than not that the contingencies will give rise to assets or liabilities. </div><div style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Acquisition related costs not considered part of the considerations are expensed as incurred and recorded in Acquisition costs within the consolidated statement of operations. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="display:inline;">Research</div> and Development Costs: </div></div>We charge costs to expense in the period incurred, and these expenses are presented in the consolidated statement of income. The following costs are included in research and development expense: salaries and benefits, external engineering service costs, engineering related information costs and supplies. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Foreign Currency Translation: </div></div>The financial statements of foreign subsidiaries and branches are measured using the local currency as the functional currency. Foreign currency-denominated assets and liabilities are translated into U.S. dollars at <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">year-end</div> exchange rates with the translation adjustment recorded as a component of accumulated comprehensive income (loss) in shareholders&#8217; equity. Revenues and expenses are translated at the average monthly exchange rates in effect during the related period. We do not provide for U.S. income taxes on foreign currency translation adjustments associated with our subsidiaries in Germany, Denmark and China since </div><div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">their undistributed earnings are considered to be permanently invested. Included in our consolidated statements of income was a net transaction foreign exchange loss of $0.5&#160;million and $0.3&#160;million in fiscal 2022 and 2023, respectively, and a net transaction foreign exchange gain of $0.6&#160;million in fiscal 2021. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Advertising: </div></div>We expense advertising costs as incurred. Advertising costs including advertising production, trade shows and other activities are designed to enhance demand for our products and amounted to approximately $1.6&#160;million, $1.3&#160;million, and $0.9&#160;million in fiscal years 2023, 2022, and 2021, respectively. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Long-Lived Assets: </div></div>Long-lived assets to be held and used are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of such assets may not be recoverable. Determination of recoverability is based on an estimate of undiscounted future cash flows resulting from the use of the asset and its eventual disposition. If the projected undiscounted cash flows are less than the carrying value, then an impairment charge would be recorded for the excess of the carrying value over the fair value, as determined by the discounting of future cash flows. There were no impairment charges for our long-lived assets in fiscal years 2023, 2022, or 2021. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Intangible Assets: </div></div>Intangible assets include the value of customer and distributor relationships, trademarks and existing technology acquired in connection with business and asset acquisitions and are stated at cost (fair value at acquisition) less accumulated amortization. These intangible assets have a definite life and are amortized over the assets&#8217; useful lives using a systematic and rational basis which is representative of the assets&#8217; use. Intangible assets with a definite life are tested for impairment whenever events or circumstances indicate that the carrying amount of an asset (asset group) may not be recoverable. If necessary, an impairment loss is recognized when the carrying amount of an asset exceeds the estimated undiscounted cash flows used in determining the fair value of the asset. The amount of the impairment loss recorded is calculated by the excess of the asset&#8217;s carrying value over its fair value. Fair value is generally determined using a discounted cash flow analysis. There were no impairment charges for our intangible assets in fiscal years 2023, 2022, or 2021. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Goodwill: </div></div>Goodwill represents the excess of the aggregate purchase price over the fair value of the net assets acquired in a purchase business combination. Management evaluates the recoverability of goodwill annually or more frequently if events or changes in circumstances, such as declines in revenue, earnings or cash flows, or material adverse changes in the business climate indicate that the carrying value of an asset might be impaired. Goodwill is tested for impairment at the reporting unit level. A reporting unit is an operating segment, or a business unit one level below an operating segment if discrete financial information for that business is prepared and regularly reviewed by segment management. However, components within an operating segment are aggregated as a single reporting unit if they have similar economic characteristics. We determined that each of our operating segments (Product Identification (&#8220;PI&#8221;) and Test&#160;&amp; Measurement (&#8220;T&amp;M&#8221;) represents a reporting unit for purposes of&#160;goodwill impairment testing. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The accounting guidance related to&#160;goodwill impairment testing allows for the performance of an optional qualitative assessment of whether it is more likely than not that the fair value of a reporting unit is less than its carrying value. Factors that management considers in this qualitative assessment include macroeconomic conditions, industry and market considerations, overall financial performance (both current and projected), changes in management and strategy and changes in the composition or carrying amount of net assets. If this qualitative assessment indicates that it is more likely than not that the fair value of a reporting unit is less than its carrying value, then a quantitative assessment is required for the reporting unit. Additionally, we can elect to forgo the qualitative assessment and perform the quantitative test. The quantitative assessment compares the fair value of the reporting unit with its carrying value. If the quantitative assessment is performed, we estimate the fair value of our reporting units using a blended income and market approach. The income approach is based on a discounted cash flow model and provides a fair value estimate based upon the reporting unit&#8217;s expected long-term operating cash flow performance. The market approach compares the reporting unit to publicly traded companies and transactions involving similar business, and requires the use of many assumptions and estimates including future revenue, expenses, capital expenditures, and working capital, as well as discount factors and </div><div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">income tax rates. If the fair value of the reporting unit exceeds the carrying value of the net assets including&#160;goodwill&#160;assigned to that unit,&#160;goodwill&#160;is not impaired. If the carrying value of the reporting unit&#8217;s net assets including&#160;goodwill&#160;exceeds the fair value of the reporting unit, then we record an impairment charge based on that difference. We performed a qualitative assessment for our fiscal 2023 analysis of goodwill. Based on this assessment, management does not believe that it is more likely than not that the carrying values of the reporting units exceed their fair values. Accordingly, no quantitative assessment was performed. There were no impairment charges for our goodwill in fiscal years 2023, 2022, or 2021.</div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Leases: </div></div>We account for our leases in accordance with ASC 842, &#8220;Leases&#8221; (&#8220;ASC 842&#8221;). ASC 842 requires a lessee to recognize assets and liabilities on the balance sheet for all leases, with the result being the recognition of a right of use (&#8220;ROU&#8221;) asset and a lease liability. The lease liability is equal to the present value of the minimum lease payments for the term of the lease, including any optional renewal periods determined to be reasonably certain to be exercised, using a discount rate determined at lease commencement. This discount rate is the rate implicit in the lease, if known; otherwise, the incremental borrowing rate for the expected lease term is used. Our incremental borrowing rate approximates the rate we would have to pay to borrow on a collateralized basis over a similar term at lease inception. The value of the ROU asset is equal to the initial measurement of the lease liability plus any lease payments made to the lessor at or before the commencement date and any unamortized initial direct costs incurred by the lessee, less any unamortized lease incentives received. Several of our lease contracts include options to extend the lease term and we include the renewal options for these leases in the determination of the ROU asset and lease liability when the likelihood of renewal is determined to be reasonably certain. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We enter into lease contracts for certain of our facilities at various locations worldwide. At inception of a contract, we determine whether the contract is or contains a lease. If we have a right to obtain substantially all of the economic benefits from the use of the identified asset and the right to direct the use of the asset, then the contract contains a lease. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">There are two types of leases, operating leases and finance leases. Lease classification is determined at lease commencement. We have made an accounting policy election to apply the short-term exception, which does not require the capitalization of leases with terms of 12 months or less. All of our leases are classified as operating leases. Operating lease expense is recognized on a straight-line basis over the lease term and included in general and administrative expense on the consolidated statement of income. ROU assets are classified as such on the consolidated balance sheet, short-term lease liabilities are classified in accrued expenses, and long-term lease liabilities are classified as such in the consolidated balance sheet. In the statement of cash flow, payments for operating leases are classified as operating activities. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In addition, several of our lease agreements include <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-lease</div> components for items such as common area maintenance and utilities which are accounted for separately from the lease component. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Income Taxes: </div></div>We use the liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are determined based on the differences between the financial reporting basis and tax basis of the assets and liabilities and are measured using statutory tax rates that will be in effect when the differences are expected to reverse. Our deferred taxes are presented as <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-current</div> in the accompanying consolidated balance sheet. An allowance against deferred tax assets is recognized when it is <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">more-likely-than-not</div> that some portion or all of the deferred tax assets will not be realized. At January&#160;31, 2023, a valuation allowance was provided for deferred tax assets attributable to certain domestic R&amp;D, foreign tax credit carryforwards and China net operating losses, all of which are expected to expire unused. At January&#160;31, 2022, a valuation allowance was provided for deferred tax assets attributed to certain domestic R&amp;D and foreign tax credit carryforwards. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We account for uncertain tax positions in accordance with the guidance provided in ASC 740, &#8220;Accounting for Income Taxes.&#8221; This guidance describes a recognition threshold and measurement attribute for the financial statement disclosure of tax positions taken or expected to be taken in a tax return and requires recognition of tax </div> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/>  <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">benefits that satisfy a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">more-likely-than-not</div> threshold. ASC 740 also provides guidance on <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">de-recognition,</div> classification, interest and penalties, accounting in interim periods and disclosure. </div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On March&#160;27,&#160;2020,&#160;the Coronavirus Aid,&#160;Relief,&#160;and Economic Security Act (&#8220;CARES Act&#8221;)&#160;was signed into law. The&#160;legislation had sweeping effects including various types of economic relief for impacted businesses and industries. One&#160;such&#160;relief&#160;provision&#160;was&#160;the Paycheck Protection Program, which provided short-term cash flow assistance to finance employee payroll and qualified expenses. On May&#160;6, 2020, we entered into a loan agreement with, and executed a promissory note in favor of Greenwood Credit Union (&#8220;Greenwood&#8221;) pursuant to which we borrowed</div></div>&#160;$4.4 <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">million (the &#8220;PPP Loan&#8221;). On December&#160;27, 2020, the Consolidated Appropriations Act, 2021, H.R. 133 was signed into law. The legislation permits the deductibility of expenses to the extent that the payment of such expenses results (or is expected to result) in the forgiveness of a loan (covered loan) guaranteed under the Paycheck Protection Program. We have fully utilized the PPP Loan proceeds for qualifying expenses and applied for forgiveness <br/>of the PPP Loan. Consistent with the legislation, we deducted the full</div></div>&#160;$4.4 million of qualified expenses on our 2020 federal tax return. On June 15, 2021, Greenwood notified us that the United States Small Business Administration (the &#8220;SBA&#8221;) approved our application for forgiveness of the entire $4.4 million principal balance of our PPP Loan and all accrued interest thereon. As a result, in the second quarter of fiscal 2022, we recorded a<br/> $4.5 million gain on extinguishment of debt. The PPP loan forgiveness is excluded from taxable income under Section 1106(i) of the CARES Act. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Net Income Per Common Share: </div></div>Basic net income per share is based on the weighted average number of shares outstanding during the period. Diluted net income per share is based on the basic weighted average number of shares and potential common equivalent shares for stock options, restricted stock awards and restricted stock units outstanding during the period using the treasury stock method. In fiscal years 2023, 2022, and 2021, there were 685,667; 345,085; and 642,623, respectively, common equivalent shares that were not included in the computation of diluted net income per common share because their inclusion would be anti-dilutive. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Fair Value Measurement: </div></div>We measure our assets and liabilities at fair value on a recurring and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-recurring</div> basis in accordance with the guidance provided in ASC 820, &#8220;Fair Value Measurement and Disclosures,&#8221; which defines fair value as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. In addition, ASC 820 establishes a three-tiered hierarchy for inputs used in management&#8217;s determination of fair value of financial instruments that emphasizes the use of observable inputs over the use of unobservable inputs by requiring that observable inputs be used when available. Observable inputs are inputs that reflect management&#8217;s belief about the assumptions market participants would use in pricing a financial instrument based on the best information available in the circumstances. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The fair value hierarchy is summarized as follows: </div> <div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top;text-align:left;">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt; text-align: left; line-height: normal;">Level 1&#8212;Quoted prices in active markets for identical assets or liabilities; </div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top;text-align:left;">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt; text-align: left; line-height: normal;">Level 2&#8212;Inputs other than Level&#160;1 that are observable, either directly or indirectly, such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities; and </div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top;text-align:left;">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt; text-align: left; line-height: normal;">Level 3&#8212;Unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities </div> </td> </tr> </table> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Cash and cash equivalents, accounts receivable, accounts payable, accrued compensation, other accrued expenses and income tax payable are reflected in the consolidated balance sheet at carrying value, which approximates fair value due to the short-term nature of these instruments. </div>  <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/>  <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Self-Insurance:</div></div> We are self-insured for U.S. medical and dental benefits for qualifying employees and maintain stop-loss coverage from a third party which limits our exposure to large claims. We record a liability associated with these benefits that includes an estimate of both claims filed and losses incurred but not yet reported based on historical claims experience. In estimating this accrual, we utilize an independent third-party broker to estimate a range of expected losses, which are based on analyses of historical data. Assumptions are closely monitored and adjusted when warranted by changing circumstances. Our liability for self-insured claims is included within accrued compensation in our consolidated balance sheets and was </div></div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">$0.3&#160;million and $0.2&#160;million at January&#160;31, 2023 and 2022, respectively. </div>  <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Share-Based Compensation:</div></div> Compensation expense for time-based restricted stock units is measured at the grant date and recognized ratably over the vesting period. We determine the fair value of time-based and performance-based restricted stock units based on the closing market price of our common stock on the grant date. The recognition of compensation expense associated with performance-based restricted stock units requires judgment in assessing the probability of meeting the performance goals, as well as defined criteria for assessing achievement of the performance-related goals. For purposes of measuring compensation expense, the number of shares ultimately expected to vest is estimated at each reporting date based on management&#8217;s expectations regarding the relevant performance criteria. The performance shares begin vesting only upon the achievement of the performance criteria. The achievement of the performance goals can impact the valuation and associated expense of the restricted stock units. The assumptions used in accounting for the share-based payment awards represent management&#8217;s best estimates, but these estimates involve inherent uncertainties and the application of management judgment. As a result, if circumstances change and we use different assumptions, our stock-based compensation expense could be materially different in the future. </div></div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Share-based compensation becomes deductible for determining income taxes when the related award vests, is exercised, or is forfeited depending on the type of share-based award and subject to relevant tax law. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Derivative Financial Instruments:</div></div> We occasionally use derivative instruments as part of our overall strategy to manage exposure to market risks primarily associated with fluctuations in foreign currency exchange rates and interest rates. Derivative instruments are recognized as either assets or liabilities in the balance sheet at fair value. The accounting for changes in the fair value (i.e., gains or losses) of a derivative instrument depends on whether it has been designated and qualifies as part of a hedging relationship and, further, on the type of hedging relationship. For derivative instruments not designated as hedging instruments, the gain or loss is recognized in the statement of income during the current period. For those derivative instruments that are designated and qualify as hedging instruments, a company must designate the hedging instrument, based upon the exposure being hedged, as a fair value hedge, cash flow hedge, or a hedge of a net investment in a foreign operation. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">For derivative instruments that are designated and qualify as a cash flow hedge, the gain or loss on the derivative instrument is reported as a component of other comprehensive income/(loss) and reclassified into earnings in the same line item associated with the forecasted transaction, and in the same period or periods during which the hedged transaction affects earnings (e.g., in &#8220;Interest Expense&#8221; when the hedged transactions are interest cash flows associated with floating-rate debt, or &#8220;Other, Net&#8221; for portions reclassified relating to the remeasurement of the debt). The remaining gain or loss on the derivative instrument in excess of the cumulative change in the present value of future cash flows of the hedged item, if any, are recognized in the statement of income during the current period. </div>  <div style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Recent Accounting Pronouncements </div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">There were no new accounting pronouncements, issued or effective during fiscal 2023, that have had or are expected to have a material impact on our consolidated financial statements. </div> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the basis of presentation and significant accounting policies concepts. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS). Accounting policies describe all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI https://asc.fasb.org/topic&amp;trid=2122369<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823638416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationsAbstract', window );"><strong>Business Combinations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationDisclosureTextBlock', window );">Acquisitions</a></td>
<td class="text"> <div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Note 2 &#8211; Acquisitions </div></div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Astro Machine </div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On August 4, 2022, we acquired Astro Machine LLC (&#8220;Astro Machine&#8221;), an Illinois-based manufacturer of printing equipment, including label printers, tabbers, conveyors, and envelope feeders, for aggregate consideration of $17.1 million. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The acquisition was accomplished pursuant to an Equity Interest Purchase Agreement dated as of August 4, 2022 (the &#8220;Purchase Agreement&#8221;) by and among us, GSND Holding Corporation (&#8220;GSND&#8221;), the parent company of Astro Machine, and Astro Machine. Pursuant to the Purchase Agreement, we purchased 100% of the issued and outstanding equity interests of Astro Machine from GSND for a purchase price of $15.6&#160;million. The acquisition was funded using borrowings under our credit facility. We obtained a representation and warranty insurance policy and placed $300,000 of the purchase price into an escrow account, which pursuant to the terms and conditions of the Purchase Agreement, are our sole recourse for breaches of representations and warranties by GSND. Upon the closing of the transaction, Astro Machine became a wholly owned subsidiary of AstroNova, Inc. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Concurrently with the signing of the Purchase Agreement, our newly acquired subsidiary, Astro Machine, entered into a Purchase and Sale Agreement with Selak Real Estate Limited Partnership (&#8220;SRE&#8221;), pursuant to which Astro Machine purchased certain real property assets of SRE for a purchase price, paid in cash, of $1.5&#160;million. These real estate assets are comprised of a 34,460 square foot industrial manufacturing building (including offices) on 1.26 acres of land, which is Astro Machine&#8217;s principal place of business. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">This transaction is a business combination and was accounted for using the acquisition method of accounting prescribed by ASC 805, &#8220;Business Combinations&#8221; (&#8220;ASC 805&#8221;), whereby the results of operations, including the revenues and earnings of Astro Machine, are included in our financial statements from the date of acquisition. The purchase price of Astro Machine was allocated to the tangible and intangible assets acquired and liabilities assumed and recognized at their fair value based on widely accepted valuation techniques in accordance with ASC 820, &#8220;Fair Value Measurement,&#8221; as of the acquisition date. The process for estimating fair values requires the use of significant estimates, assumptions and judgments, including determining the timing and estimates of future cash flows and developing appropriate discount rates. The excess of the purchase price over the fair value of the net identified assets acquired and liabilities assumed was recorded as goodwill. ASC 805 establishes a measurement period to provide companies with a reasonable amount of time to obtain the information necessary to identify and measure various items in a business combination and cannot extend beyond one year from the acquisition date. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We completed our final fair value determination of the assets acquired and liabilities assumed during the fourth quarter of fiscal 2023. Since the initial preliminary estimates reported in the third quarter of fiscal 2023, we have adjusted certain amounts for the fair value of the assets acquired and liabilities assumed as a result of obtaining additional information that allowed us to determine the final purchase price allocation, as summarized in the table below. Measurement period adjustments were recognized in the reporting period in which the adjustments were determined and calculated as if the accounting had been completed at the acquisition date. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Total acquisition-related costs of $0.7&#160;million are included in the general and administrative expenses in our consolidated statement of income for the year ended January&#160;31, 2023.</div> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div></div>   <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table sets forth the final purchase price allocation of the Astro Machine acquisition for the estimated fair value of the net asset acquired and liabilities assumed as of the date of acquisition: </div></div></div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:85%"/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/> </tr>
<tr>
<td style="vertical-align: bottom; line-height: 8pt; font-size: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="text-indent: 0px; line-height: 8pt; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">(In thousands)</div><br/></div></td>
<td style="vertical-align: bottom; line-height: 8pt; font-size: 8pt;"> <div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"> <div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"> <div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"> <div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;">Cash</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">91</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accounts Receivable</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,393</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Inventory</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,715</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Property, Plant and Equipment</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,200</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Identifiable Intangible Assets</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Goodwill</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,730</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accounts Payable and Other Current Liabilities</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,484</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Purchase Price</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; border-bottom: 2.5pt double black;">$</td>
<td style="white-space: nowrap; vertical-align: bottom; border-bottom: 2.5pt double black;;text-align:right;">17,125</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr> </table>  <div style="margin-top: 12pt; margin-bottom: 6pt; text-indent: 4%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt;">The fair value of the intangible assets acquired was estimated by applying the income approach. This fair value measurement is based on significant inputs that are not observable in the market and therefore represent a Level&#160;3 measurement as defined in ASC 820, &#8220;Fair Value Measurement.&#8221; Key assumptions in estimating the fair value of the intangibles include (1)&#160;remaining useful life of the tradename/trademarks and customer relations (2)&#160;the royalty rate of 0.75%, (3) customer attrition rate of 18.0%, (4) discount rate of 19.0% and (5)&#160;a range of revenue and net income projections for the fiscal years 2023-2026. </div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table sets forth the fair value of the acquired identifiable intangible assets and related estimated useful lives: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px; padding-top: 0pt; padding-bottom: 0pt;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 76%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:75%"/>
<td style="vertical-align:bottom;width:9%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:9%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="font-weight:bold;display:inline;width:100%;">Fair<br/> Value</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="font-weight:bold;display:inline;width:100%;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="font-weight:bold;display:inline;width:100%;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="font-weight:bold;display:inline;width:100%;">Useful&#160;Life<br/> (<div style="letter-spacing: 0px; top: 0px;;display:inline;">y</div>ears)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Customer Relations</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,060</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Trademarks/Tradenames</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">420</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Total</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr></table> <div style="margin-top: 12pt; margin-bottom: 6pt; text-indent: 4%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt;">The Customer Relations intangible asset represents the relationships that will be maintained with certain historical customers of Astro Machine. The trademark/tradename intangible assets reflect the industry reputation of the Astro Machine name recognition and the registered trademarks for the use of several marks and logos held by Astro Machine. </div><div style="margin-top: 12pt; margin-bottom: 6pt; text-indent: 4%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt;">Goodwill of $2.73&#160;million, which is not deductible for tax purposes, represents the excess of the purchase price over the estimated fair value assigned to the tangible and identifiable intangible assets acquired and liabilities assumed from Astro Machine. The goodwill recognized under ASC 805 is attributable to synergies which are expected to enhance and expand our overall product portfolio, opportunities in new and existing markets, future technologies that have yet to be determined and Astro Machine&#8217;s assembled work force. The carrying amount of the goodwill was allocated to the Product Identification (&#8220;PI&#8221;) segment. </div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The amounts of revenue and earnings before taxes included in our consolidated statement of income from the period August 4, 2022 (acquisition date) through January 31, 2023 are as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:85%"/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(In thousands)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Revenue</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12,515</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Earnings before Taxes</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,571</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color:#ffffff;;display:inline;">Astro Machine results are reported as part of the PI segment. Proforma results are not provided, as disclosure of such amounts was impractical to determine as the acquired business had insufficient financial records and no audit </div></div></div><div style="background-color:#ffffff;;display:inline;">history prior to the transaction.</div></div><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color:#ffffff;;display:inline;">&#160;</div></div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color:#ffffff;;display:inline;"/></div></div></div><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc"/></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Honeywell Asset Purchase and License Agreement</div></div></div></div><div style="letter-spacing: 0px; top: 0px;;display:inline;"/><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">On June&#160;30, 2022, AstroNova Inc. entered into an Asset Purchase and License Agreement with Honeywell Inc. (&#8220;New HW Agreement&#8221;) to acquire an exclusive, perpetual, world-wide license to manufacture Honeywell&#8217;s flight deck printers for the Boeing 787 aircraft.&#160;&#160;&#160;&#160;The New HW Agreement provides for royalty payments to Honeywell based on gross revenues from the sales of the printers, paper and repair services of the licensed products in perpetuity. The royalty rates vary based on the year in which they are paid or earned and as products are sold or as services provided and range from single-digit to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">mid-double-digit</div> percentages of gross revenue. The New HW Agreement included a provision for guaranteed minimum royalty payments to be paid in the event that the royalties earned by Honeywell do not meet the minimum for the preceding calendar year as follows: $100,000 in 2024, $200,000 in 2025, $233,000 in 2026 and 2027, and $234,000 in 2028.</div><br/></div> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">This transaction was evaluated under ASC 805, &#8220;Business Combinations,&#8221; and was accounted for as an asset acquisition. </div></div><br/></div><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The purchase price was allocated to the customer relationship intangible, which was the only asset acquired as a result of this transaction. This asset will be amortized over the useful life of the intangible. The minimum royalty payment obligation and related customer relation intangible were recorded at the present value of the minimum royalty payments. </div></div></div><div style="letter-spacing: 0px; top: 0px; background: none;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px; background: none; text-decoration: none;;display:inline;"> </div></div>  <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The acquired identifiable intangible asset is as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: &quot;Times New Roman&quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 77%;"/>
<td style="width: 8%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 8%; vertical-align: bottom;"/>
<td/>
<td/>
<td/></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"/>(In thousands)<div style="letter-spacing: 0px; top: 0px;;display:inline;"/></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fair<br/>Value</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Useful&#160;Life<br/>(Years)</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">530</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">20</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr></table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/> <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div></div><div style="clear:both;max-height:0pt;"/><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The minimum royalty payment due was discounted based on the payment schedule and applicable discount rate, resulting in an outstanding royalty obligation of $0.5 million as of January 31, 2023, including $0.1 million recorded as a current liability. </div></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Additional royalties based on sales activity will be recorded in the period that the associated revenue is earned. During the fourth quarter of 2023, we incurred $0.1 million <div style="display:inline;">in e</div>xcess royalty expense, which is included in cost of revenue in our consolidated statement of income for the year ended January 31, 2023. </div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -URI https://asc.fasb.org/topic&amp;trid=2303972<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4946-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229907741296">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Note 3&#8212;Revenue Recognition </div></div></div></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;text-indent: 0px;;display:inline;">We derive revenue from the sale of (i)&#160;hardware including, digital color la<div style="display:inline;">be</div>l printers and specialty OEM printing systems, portable data acquisition systems and airborne printers used in the flight deck and interior of commercial, business and military aircraft, (ii)&#160;related consumable supplies including paper, labels, tags, inks, toners and ribbons, (iii)&#160;repairs and maintenance of equipment and (iv)&#160;service agreements<div style="letter-spacing: 0px; top: 0px;;display:inline;">.</div></div></div></div><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Revenues disaggregated by primary geographic markets and major product types are as follows: </div></div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Primary geographical markets: </div></div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"><br/></div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:61%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">United States</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">91,917</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">68,185</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">70,911</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Europe</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">31,021</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">31,922</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">29,029</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Canada</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8,393</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">6,519</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,574</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Asia</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,345</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,926</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,105</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Central and South America</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,589</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,271</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,950</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Other</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,262</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,657</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,464</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Total Revenue</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">142,527</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">117,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">116,033</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table><div style="clear:both;max-height:0pt;"/><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Major product types: </div></div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:61%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Hardware</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">42,445</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">31,492</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">34,111</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Supplies</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">82,072</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">73,244</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">71,772</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Service and Other</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">18,010</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12,744</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">10,150</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Revenue</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">142,527</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">117,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">116,033</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In December 2022, we entered into an amended contract with one of our T&amp;M customers that provided for a total payment of $3.25<div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;text-indent: 0px;;display:inline;">&#160;million to be received as a result of our claims allowable under French law relating to additional component costs we have incurred and will continue to incur in order to supply aerospace printers under the contract for the period beginning in April 2022 and continuing through 2025. As of January&#160;31, 2023, $</div></div>1.1&#160;million was recognized as revenue in the consolidated income statement for the period ended January&#160;31, 2023, in proportion to the total estimated shipments through the end of the contract period. The balance is recorded within deferred revenue, both current and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-current,</div> and will be recognized into revenue based on shipments made of the printers during fiscal years 2024 and 2025. </div> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Contract Assets and Liabilities </div></div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We normally do not have contract assets, which are primarily unbilled accounts receivable that are conditional on something other than the passage of time. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our contract liabilities, which represent billings in excess of revenue recognized, are related to advanced billings for purchased service agreements and extended warranties. Contract liabilities were $412,000 and $262,000 at January&#160;31, 2023 and January&#160;31, 2022, respectively, and are recorded as current deferred revenue in the accompanying consolidated balance sheet. The decrease in the deferred revenue balance during the year ended January&#160;31, 2023 is primarily due to $248,000 of revenue recognized during the period that was included in the deferred revenue balance at January&#160;31, 2023 offset by cash payments received in advance of satisfying performance obligations. </div> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Contract Costs </div></div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We have determined that certain costs related to obtaining sales contracts for our aerospace printer products meet the requirement to be capitalized. In the second quarter of fiscal 2022, we extended the remaining useful life of these deferred costs from 6 years to 20 years and changed the amortization method from units sold to the straight-line method. We believe these changes, based on <div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">the life of the aircraft under the applicable sales contracts, appropriately reflects a more systematic and rational approach. This change was treated as a change in<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">accounting estimate that is affected by a change in accounting principle. The impact on net income was immaterial for the period ended January&#160;</div>31<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, </div>2022<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">. The balance of these contract assets at </div>January 31, 2022<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, was $</div>1.3<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;million, and in the first quarter of fiscal </div>2023<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> we incurred an additional $</div>0.1<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;million in contract costs that will be amortized over </div>19<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> years. For the years ended January&#160;</div>31<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, </div>2023<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, </div>2022<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> and </div>2021<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, we amortized contract costs of $</div>75,000<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, $</div>60,000 <div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">and $</div>27,000<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, respectively. The balance of deferred incremental direct costs net of accumulated amortization at January&#160;</div>31<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, </div>2023<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, was $</div>1.4<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;million, of which $</div>0.1<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;million is reported in other current assets and $</div>1.3<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;million is reported in ot<div style="display:inline;">her as</div>sets in the accompanying consolidated balance sheet.</div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-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_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a href="javascript:void(0);" onclick="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> -URI https://asc.fasb.org/topic&amp;trid=49130388<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 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130551-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 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130556-203045<br><br>Reference 4: 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 12<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 5: 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 9<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130550-203045<br><br>Reference 6: 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 12<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 7: 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 12<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<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 12<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 9: 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 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130558-203045<br><br>Reference 10: 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 12<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229907800752">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsDisclosureTextBlock', window );">Intangible Assets</a></td>
<td class="text"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Note 4&#8212;Intangibl<div style="display:inline;">e</div> Assets</div></div></div></div><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible assets are as follows: </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 9pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 38%;"/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="14" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31, 2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="14" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31, 2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">(In thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Gross<br/>Carrying<br/>Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated<br/>Amortization</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Currency<br/>Translation<br/>Adjustment</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/>Carrying<br/>Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Gross<br/>Carrying<br/>Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated<br/>Amortization</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Currency<br/>Translation<br/>Adjustment</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/>Carrying<br/>Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 9pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Miltope:</div></div></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer&#160;Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">3,100</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(2,777</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">323</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">3,100</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(2,515</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">585</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">RITEC:</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">2,830</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(1,623</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">1,207</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">2,830</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(1,557</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">1,273</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">TrojanLabel:</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Existing&#160;Technology</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">2,327</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(2,087</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">94</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">334</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">2,327</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(1,767</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">127</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">687</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Distributor&#160;Relations</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">937</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(588</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">27</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">376</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">937</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(498</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">46</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">485</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Honeywell:</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">27,773</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(11,913</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">15,860</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">27,243</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(11,073</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">16,170</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Astro Machine:</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">3,060</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(306</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">2,754</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">420</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(42</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">378</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 38%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible Assets, net</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">40,447</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(19,336</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">121</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">21,232</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">36,437</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(17,410</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">173</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">19,200</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 38%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/>  <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">In the second quarter of 2022, we extended the remaining useful life of the pre-existing customer contract relationship intangibles for Honeywell International, Inc. (&#8220;Honeywell&#8221;) from </div></div>6 years to 20 years and for the RITEC intangibles we changed the amortization method which was based on revenue with a remaining life of 4 years to the straight-line method with a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">20-year</div> remaining life. We believe these changes, based on the life of the aircraft related to these intangibles, appropriately reflects a more systematic and rational approach to distributing the cost of these intangibles over their useful lives. The change in the amortization of the Honeywell customer contract relationship intangibles is being treated as a change in accounting estimate in 2022 and the change in the amortization of the RITEC customer contract relationship intangibles is being treated as a change in accounting estimate in 2022 that is effected by a change in accounting principle. The changes in amortization resulted in a $1.8&#160;million decrease in amortization expense and a $1.8&#160;million increase to net income for the period ended January&#160;31, 2022. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">There were no impairments to intangible assets during the periods ended January&#160;31, 2023 and 2022. Amortization expense of $1.9&#160;million, $2.2&#160;million, and $4.1&#160;million with regard to acquired intangibles has been included in the consolidated statements of income for the years ended January&#160;31, 2023, 2022 and 2021, respectively.<br/></div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Estimated amortization expense for the next <div style="display:inline;">five</div> fiscal years is as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:64%"/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2024</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2025</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2026</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2027</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2028</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Estimated amortization expense</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,378</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,719</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,718</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,7192</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,281</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></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_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_IntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all or part of the information related to intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -URI https://asc.fasb.org/subtopic&amp;trid=2144471<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229828520688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventories</a></td>
<td class="text"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 5&#8212;Inventories </div></div>  <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The components of invento<div style="display:inline;">ries</div> are as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:74%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Materials and Supplies</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">38,387</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">22,709</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Work-in-Progress</div></div></div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,146</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,489</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Finished Goods</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">23,221</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">19,718</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">62,754</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">43,916</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Inventory Reserve</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(11,430</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(9,307</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">51,324</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">34,609</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Finished goods inventory includes $2.3&#160;million and $3.4&#160;million of demonstration equipment at January&#160;31, 2023 and 2022, respectively. </div> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI https://asc.fasb.org/topic&amp;trid=2126998<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>26
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229907800752">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, Plant and Equipment<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">Property, Plant and Equipment</a></td>
<td class="text"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 6&#8212;Property, Plant and Equipment </div></div>  <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Property, plant and equipment consist of the following: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:72%"/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Land and Land Improvements</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,304</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,004</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Buildings and Leasehold Improvements</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,158</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12,666</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Machinery and Equipment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">24,960</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">23,238</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Computer Equipment and Software</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13,972</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13,913</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Gross Property, Plant and Equipment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">55,394</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">50,821</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accumulated Depreciation</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(41,106</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(39,380</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Property Plant and Equipment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,288</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11,441</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Depreciation expense on property, plant and equipment was $2.0&#160;million for the year ended January&#160;31, 2023 and $1.7&#160;million and $1.9&#160;million for the years ended January&#160;31, 2022 and 2021, respectively. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During fiscal 2022, we <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">wrote-off</div> our Oracle EnterpriseOne enterprise resource planning (&#8220;ERP&#8221;) system due to the full implementation of a new ERP system in our US operations.&#160;The book value and related accumulated depreciation of the Oracle EnterpriseOne ERP system along with the balance of the related prepaid service and maintenance contracts were removed from the accompanying consolidated balance sheet at January&#160;31, 2022, and we have recorded a net loss on the disposal of $696,000, which is included in other income (expense) in the accompanying consolidated income statement for the year ended January&#160;31, 2022. </div> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126982197&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 https://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 https://asc.fasb.org/extlink&amp;oid=126982197&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 https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99779-112916<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>27
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827288496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock', window );">Accrued Expenses</a></td>
<td class="text"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 7&#8212;Accrued Expenses </div></div> <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued expenses consist of the following: </div></div></div> <div style="letter-spacing: 0px; top: 0px; background: none;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px; background: none; text-decoration: none;;display:inline;"> </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><br/></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 78%;"/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="font-size: 0px;">
<td style="width:78%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Warranty</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,072</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">834</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Professional Fees</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">311</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">411</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Freight</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">347</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><span style="-sec-ix-hidden:hidden75771655">Lease</span> <span style="-sec-ix-hidden:hidden75771656">Liability</span></div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">275</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">327</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accrued Property&#160;&amp; Sales Tax</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">187</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">316</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Stockholder Relation Fees</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">86</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">102</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Dealer Commissions</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">78</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">139</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Accrued Expenses</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,299</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,637</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 78%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,308</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,113</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 78%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229908060768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Agreement and Long-Term Debt<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">Credit Agreement and Long-Term Debt</a></td>
<td class="text"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 8&#8212;Credit Agreement and Long-Term Debt </div></div> <div style="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Credit Agreement </div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In connection with the purchase of Astro Machine, on August 4, 2022, we entered into a Second Amendment to Amended and Restated Credit Agreement (the &#8220;Second Amendment&#8221;) with Bank of America, N.A., as lender (the &#8220;Lender&#8221;). The Second Amendment amended the Amended and Restated Credit Agreement dated as of July 30, 2020, as amended by the First Amendment to Amended and Restated Credit Agreement, dated as of March 24, 2021, and the LIBOR Transition Amendment, dated as of December 24, 2021 (the &#8220;Existing Credit Agreement,&#8221; and the Existing Credit Agreement as amended by the Second Amendment, the &#8220;Amended Credit Agreement&#8221;), between the Company and the Lender. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Amended Credit Agreement provides for (i)&#160;a new term loan in the principal amount of $6.0&#160;million, which term loan was in addition to the existing term loan outstanding under the Existing Credit Agreement in the principal amount of $9.0&#160;million as of the effective date of the Second Amendment, and (ii)&#160;an increase in the aggregate principal amount of the revolving credit facility available thereunder from $22.5&#160;million to $25.0&#160;million. At the closing of the Second Amendment, we borrowed the entire $6.0&#160;million term loan and $12.4&#160;million under the revolving credit facility, and the proceeds of such borrowings were used in part to pay the purchase price payable under the Purchase Agreement and certain related transaction costs. The revolving credit facility may otherwise be used for corporate purposes. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Amended Credit Agreement requires that the term loan be paid in quarterly installments on the last day of each of our fiscal quarters over the term of the Amended Credit Agreement on the following repayment schedule: the principal amount of each quarterly installment required to be paid on the last day of each of our fiscal quarters ending on or about October 31, 2022 through July 31, 2023 is $375,000; and the principal amount of each quarterly installment required to be paid on the last day of each of our fiscal quarters ending on or about October 31, 2023 through April 30, 2027 is $675,000. The entire remaining principal balance of the term loan is required to be paid on August 4, 2027. We may voluntarily prepay the term loan, in whole or in part, from time to time without premium or penalty (other than customary breakage costs, if applicable). We may repay borrowings under the revolving credit facility at any time without premium or penalty (other than customary breakage costs, if applicable), but in any event no later than August 4, 2027, and any outstanding revolving loans thereunder will be due and payable in full, and the revolving credit facility will terminate, on such date. We may reduce or terminate the revolving line of credit at any time, subject to certain thresholds and conditions, without premium or penalty. <br/></div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The interest rates under the Amended Credit Agreement are as follows: the term loan and revolving credit loans bear interest at a rate per annum equal to, at our option, either (a)&#160;the BSBY Rate as defined in the </div></div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div></div> <div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; margin-left: 0in;">Amended Credit Agreement (or, in the case of revolving credit loans denominated in a currency other than U.S. Dollars, the applicable quoted rate), plus a margin that varies within a range of 1.60% to 2.50% based on our consolidated leverage ratio, or (b)&#160;a fluctuating reference rate equal to the highest of (i)&#160;the federal fund rate plus 0.50%, (ii) Bank of America&#8217;s publicly announced prime rate, (iii)&#160;the BSBY Rate plus 1.00%, or (iv) 0.50%, plus a margin that varies within a range of 0.60% to 1.50% based on our consolidated leverage ratio. In addition to certain other fees and expenses that we are required to pay to the Lender, we are required to pay a commitment fee on the undrawn portion of the revolving credit facility that varies within a range of 0.15% and 0.35% based on our consolidated leverage ratio. The loans under the Amended Credit Agreement are subject to certain mandatory prepayments, subject to various exceptions, from (a)&#160;net cash proceeds from certain dispositions of property, (b) net cash proceeds from certain issuances of equity, (c)&#160;net cash proceeds from certain issuances of additional debt and (d) net cash proceeds from certain extraordinary receipts. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Amounts repaid under the revolving credit facility may be reborrowed, subject to our continued compliance with the Amended Credit Agreement. No amount of the term loan that is repaid may be reborrowed. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We must comply with various customary financial and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-financial</div> covenants under the Amended Credit Agreement. The financial covenants under the Amended Credit Agreement consist of a maximum consolidated leverage ratio, a minimum consolidated fixed charge coverage ratio and a minimum consolidated asset coverage ratio. The primary <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-financial</div> covenants limit our and our subsidiaries&#8217; ability to incur future indebtedness, to place liens on assets, to pay dividends or distributions on our or our subsidiaries&#8217; capital stock, to repurchase or acquire our or our subsidiaries&#8217; capital stock, to conduct mergers or acquisitions, to sell assets, to alter our or our subsidiaries&#8217; capital structure, to make investments and loans, to change the nature of our or our subsidiaries&#8217; business, and to prepay subordinated indebtedness, in each case subject to certain exceptions and thresholds as set forth in the Amended Credit Agreement, certain of which provisions were modified by the Second Amendment. As of January&#160;31, 2023, we believe we are in compliance with all of the covenants in the Credit Agreement. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Lender is entitled to accelerate repayment of the loans and to terminate its revolving credit commitment under the Amended Credit Agreement upon the occurrence of any of various customary events of default, which include, among other events, the following (which are subject, in some cases, to certain grace periods): failure to pay when due any principal, interest or other amounts in respect of the loans, breach of any of our covenants or representations under the loan documents, default under any other of our or our subsidiaries&#8217; significant indebtedness agreements, a bankruptcy, insolvency or similar event with respect to us or any of our subsidiaries, a significant unsatisfied judgment against us or any of our subsidiaries, or a change of control. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our obligations under the Amended Credit Agreement continue to be secured by substantially all of our personal property assets (including a pledge of the equity interests we hold in ANI ApS, AstroNova GmbH and AstroNova SAS), subject to certain exceptions, and by a mortgage on our owned real property in West Warwick, Rhode Island, and are guaranteed by, and secured by substantially all of the personal property assets of Astro Machine. </div><div style="margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Summary of Outstanding Debt </div></div><div style="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Revolving Credit Facility </div></div></div><div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During fiscal 2023 we borrowed a net of $15.9&#160;million on our revolving line of credit. The balance outstanding under the revolving line of credit bore interest at a weighted average rate of 6.71% and 4.10% for the years ended January&#160;31, 2023 and January&#160;31, 2022, respectively, and we incurred $752,000 and $4,000 for interest on this obligation during the years ended January&#160;31, 2023 and January&#160;31, 2022, respectively. Commitment fees on the undrawn portion of our revolving credit facility of $30,000 and $50,000 were incurred for the yea<div style="background-color:#ffffff;;display:inline;">rs ended January&#160;31</div><div style="background-color:#ffffff;;display:inline;">, 2023</div><div style="background-color:#ffffff;;display:inline;"> and January&#160;31</div><div style="background-color:#ffffff;;display:inline;">, 2022</div><div style="background-color:#ffffff;;display:inline;">, respectively. Both the interest expense and commitment fees are included as interest expense in the accompanying consolidated income statement for all periods presented. At January&#160;31</div><div style="background-color:#ffffff;;display:inline;">, 2023</div><div style="background-color:#ffffff;;display:inline;">, $</div><div style="background-color:#ffffff;;display:inline;">9.1</div><div style="background-color:#ffffff;;display:inline;">&#160;million remains available for borrowing under our revolving line of credit.</div></div><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Long-Term Debt </div></div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Long-term debt in the accompanying condensed consolidated balance sheets under the Amended Credit Agreement is as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:74%"/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">USD Term Loan (6.78% as of January&#160;31, 2023); maturity date of August 4, 2027</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">USD Term Loan (2.35% as of January&#160;31, 2022); maturity date of September&#160;30, 2025</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Debt Issuance Costs, net of accumulated amortization</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(110</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(96</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Current Portion of Term Loan</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,100</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,000</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Long-Term Debt</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12,040</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8,154</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During the years ended January&#160;31, 2023, 2022 and 2021, we recognized $0.6&#160;million, $0.3&#160;million and $0.5&#160;million of interest expense on our long-term debt, respectively, which was included in interest expense in the accompanying consolidated income statement for all periods presented. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The schedule of required principal payments remaining on our long-term debt outstanding as of January&#160;31, 2023 is as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:68%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:85%"/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2024</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,100</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2025</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,700</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2026</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,700</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2027</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,700</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2028</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,050</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for 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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229908127360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Paycheck Protection Program Loan<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DisclosureForPaycheckProtectionProgramLoanTextBlock', window );">Paycheck Protection Program Loan</a></td>
<td class="text"><div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 9&#8212;Paycheck Protection Program Loan </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On May&#160;6, 2020, we entered into a loan agreement with, and executed a promissory note in favor of Greenwood pursuant to which we borrowed $4.4&#160;million (the &#8220;PPP Loan&#8221;) from Greenwood under the Paycheck Protection Program (&#8220;PPP&#8221;) administered by the SBA and authorized by the CARES Act. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The PPP Loan, originally scheduled to mature on May 6, 2022, was unsecured and bore interest at a rate of 1.0% per annum, accruing from the loan date. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On June&#160;15, 2021, Greenwood notified us that the SBA approved our application for forgiveness of the entire $4.4&#160;million principal balance of our PPP Loan and all accrued interest thereon. As a result, in the second quarter of fiscal 2022, we recorded a $4.5&#160;million gain on extinguishment of debt, which is included in the accompanying consolidated income statement for the period ended January&#160;31, <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2022. </div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_DisclosureForPaycheckProtectionProgramLoanTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure for Paycheck Protection Program Loan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DisclosureForPaycheckProtectionProgramLoanTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827288496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Financial Instruments and Risk Management<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock', window );">Derivative Financial Instruments and Risk Management</a></td>
<td class="text"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Note 10&#8212;Derivative Financial Instruments and Risk Management </div></div></div></div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">In 2017, we entered into a cross-currency interest rate swap and an interest rate swap to manage the interest rate risk. </div></div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div></div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On July 30, 2020, we terminated these two swaps. The terms of the Amended and Restated Credit Agreement dated as of July 30, 2020, caused those swaps to cease to be effective hedges of the underlying exposures. The termination of the swaps was contracted immediately prior to the end of the second quarter of fiscal 2021 at a cash cost of approximately $0.7&#160;million which was settled in the third quarter of fiscal 2021. Upon termination, the remaining balance of $58,000 in accumulated other comprehensive loss related to the cross-currency interest rate swap was reclassified into earnings as the forecasted foreign currency interest payments will not occur. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The $0.2&#160;million remaining balance in accumulated other comprehensive loss related to the interest rate swap was amortized into earnings through the original term of the hedge relationship as the underlying floating interest rate debt still exists. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">At January&#160;31, 2023, we have fully reclassified all of the net losses on the frozen other comprehensive income balance from accumulated other comprehensive loss to earnings associated with the terminated interest rate swap due to the payment of variable interest associated with the floating interest rate debt. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The following tables present the impact of the derivative instruments in our consolidated financial statements for the years ended January&#160;31, 2023 and 2022: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:41%"/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="18" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Years Ended</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td rowspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="font-weight:bold;display:inline;">Cash Flow Hedge</div></div><div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">(In thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amount of Gain(Loss)<br/> Recognized in OCI<br/> on<br/> Derivative</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" rowspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Location&#160;of&#160;Gain&#160;(Loss)<br/> Reclassified&#160;from<br/> Accumulated&#160;OCI&#160;into<br/> Income</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amount of Gain (Loss)<br/> Reclassified from<br/> Accumulated&#160;OCI&#160;into<br/> Income</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Swap&#160;contracts</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">Other Income</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(59</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(79</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></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_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -URI https://asc.fasb.org/topic&amp;trid=2229140<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126731327&amp;loc=d3e90205-114008<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229828520688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Retention Credit<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditDisclosureAbstract', window );"><strong>Employee Retention Credit Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DisclosureForEmployeeRetentionCreditTextBlock', window );">Employee Retention Credit</a></td>
<td class="text"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 11&#8212;Employee Retention Credit </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The CARES Act provides an employee retention credit (&#8220;ERC&#8221;) that is a refundable tax credit against certain employer taxes. On December&#160;27, 2020, Congress enacted the Taxpayer Certainty and Disaster Tax Relief Act of 2020, which amended and extended ERC availability under Section&#160;2301 of the CARES Act. Before the enactment of the Taxpayer Certainty and Disaster Tax Relief Act of 2020, we were ineligible for the ERC because we received the PPP Loan. Following enactment of the Taxpayer Certainty and Disaster Tax Relief Act of 2020, we and other businesses that received loans under that program became retroactively eligible for the ERC. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">As a result of the foregoing legislation, we were eligible to claim a refundable tax credit against the employer share of Social Security taxes equal to seventy percent (70%) of the qualified wages that we paid to our employees between December&#160;31, 2020 and June&#160;30, 2021. Qualified wages are limited to $10,000&#160;per employee per calendar quarter in 2021 for a maximum ERC per employee of $7,000&#160;per calendar quarter in 2021. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">We evaluated our eligibility for the ERC in the second quarter of calendar year 2021</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">. In order to qualify for the ERC, we needed to experience a </div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">20</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">% reduction in gross receipts from either (1)</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">&#160;the same quarter in calendar year 2019</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"> or (2)</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">&#160;the immediately preceding quarter to the corresponding calendar quarter in 2019</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">. We determined that we qualified for the employee retention credit under the first scenario for wages paid in calendar year 2020</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"> and the first calendar quarter of 2021</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">. In the second quarter of the current year, we amended certain payroll tax filings and applied for a refund of $</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">3.1</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">million. Since there is no US&#160;GAAP guidance for </div><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">for-profit</div></div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"> business entities that receive government assistance that is not in the form of a loan, an income tax credit or revenue from a contract with a customer, we determined the appropriate accounting treatment by analogy to other guidance. We accounted for the&#160;employee&#160;retention&#160;credit&#160;by analogy to International Accounting Standards (IAS) 20, Accounting for Government Grants and Disclosure of Government Assistance, of </div></div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"/></div></div></div>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">International Financial Reporting Standards (IFRS). Under an IAS 20 analogy, a business entity would recognize the credit on a systematic basis over the periods in which the entity recognizes the payroll expenses for which the grant (i.e., tax credit) is intended to compensate when there is reasonable assurance (i.e., it is probable) that the entity will comply with any conditions attached to the grant and the grant (i.e., tax credit) will be received. </div></div></div></div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">We recorded a $</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">3.1</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">&#160;million receivable in the second quarter of fiscal 2022</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"> for the ERC receivable, which was outstanding as of January&#160;31</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">, 2022</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"> and is included as such in the accompanying consolidated balance sheet. The $</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">3.1</div><div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;">&#160;mil</div>lion of ERCs was recognized as a reduction in employer payroll taxes and allocated to the financial statement captions from which the employee&#8217;s taxes were originally incurred. As a result, we recorded a reduction in expenses of $1.7&#160;million in cost of revenue, $0.8&#160;million in selling and marketing, $0.3&#160;million in research and development and $0.3&#160;million in general and administrative which is reflected in the accompanying consolidated income statement for the year ended January&#160;31, 2022. On March&#160;22, 2022, we received the $3.1&#160;million for the ERC. </div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_DisclosureForEmployeeRetentionCreditTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure for Employee retention credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DisclosureForEmployeeRetentionCreditTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_EmployeeRetentionCreditDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Employee retention credit disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_EmployeeRetentionCreditDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827092272">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Royalty Obligation<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyObligationDisclosureAbstract', window );"><strong>Royalty Obligation Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock', window );">Royalty Obligation</a></td>
<td class="text"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 12&#8212;Royalty Obligation </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In fiscal 2018, AstroNova, Inc. entered into an Asset Purchase and License Agreement with Honeywell International, Inc. to acquire an exclusive, perpetual, world-wide license to manufacture Honeywell&#8217;s narrow-format flight deck printers for two aircraft families along with certain inventory used in the manufacturing of the licensed printers. The purchase price included a guaranteed minimum royalty payment of $15.0&#160;million, to be paid in quarterly installments over a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">ten-year</div> period. Royalty payments are based on gross revenues from the sales of the printers, paper and repair services of the licensed products. The royalty rates vary based on the year in which they are paid or earned and product sold or service provided, and range from single-digit to mid double-digit percentages of gross revenue. </div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;text-indent: 0px;;display:inline;">The guaranteed minimum royalty payment obligation was recorded at the present value of the minimum annual royalty payments. As of January&#160;31, 2023, we had paid an aggregate of $</div></div>9.5&#160;million of the guaranteed minimum royalty obligation. At January&#160;31, 2023, the current portion of the outstanding guaranteed minimum royalty obligation of $1.6&#160;million is to be paid over the next twelve months and is reported as a current liability and the remainder of $3.0&#160;million is reported as a long-term liability on our consolidated balance sheet. In addition to the guaranteed minimum royalty payments, for the periods ended January&#160;31, 2023 and January&#160;31, 2022, we also incurred excess royalty expense of $1.3&#160;million and $0.5&#160;million, respectively, which is included in cost of revenue in our consolidated statements of income. A total of $0.4&#160;million of excess royalty is payable and reported as a current liability on our consolidated balance sheet at January&#160;31, 2023.</div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">In fiscal 2023, AstroNova, Inc. entered into a second Asset Purchase and License Agreement with Honeywell International, Inc. as further discussed in Note 2. </div></div></div> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure for the honeywell royalty obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_RoyaltyObligationDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RoyaltyObligationDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229913513840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">Leases</a></td>
<td class="text"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 13&#8212;Leases </div></div> <div style="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">We enter into lease contracts for certain of our facilities at various locations worldwide. Our leases have remaining lease terms of one to six years, some of which include options to extend the lease term for periods of up to five years when it is reasonably certain that we will exercise such options. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Balance sheet and other information related to our leases is as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:43%"/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="font-weight:bold;display:inline;">Operating Leases</div></div><div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">(In thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Balance&#160;Sheet&#160;Classification</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Lease Assets</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap;text-align:center;">Right&#160;of&#160;Use&#160;Assets</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">794</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,094</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Lease Liabilities&#8212;Current</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap;text-align:center;">Other&#160;Accrued&#160;Expenses</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">275</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">327</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Lease Liabilities&#8212;Long Term</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap;text-align:center;">Lease Liabilities</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">555</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">808</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table> <div style="clear:both;max-height:0pt;"/><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> </div></div></div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Lease cost information is as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: &quot;Times New Roman&quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 41%;"/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; white-space: nowrap; border-bottom: 1pt solid rgb(0, 0, 0);"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating Leases</div></div></div></div><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"/>(In thousands)<div style="letter-spacing: 0px; top: 0px;;display:inline;"/></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Statement&#160;of&#160;Income&#160;Classification</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Operating Lease Costs</div></td>
<td style="vertical-align: bottom;;width:4%;">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap;text-align:center;"><div style="line-height: normal; margin-bottom: 0px; margin-top: 0px;">&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap; text-align: right;">General&#160;and&#160;Administrative&#160;Expense</td>
<td style="vertical-align:bottom"><div style="line-height: normal; margin-bottom: 0px; margin-top: 0px;">&#160;</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space: nowrap; vertical-align: bottom;;text-align:right;;width:4%;">460</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space: nowrap; vertical-align: bottom;;text-align:right;;width:4%;">510</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table>  <div style="text-indent: 4%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">At January&#160;31, 2023, maturities of operating lease liabilities <div style="display:inline;">are </div>as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:89%"/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom;white-space:nowrap"><div style="margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">(In thousands)</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2024</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">302</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2025</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">199</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2026</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">154</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2027</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">149</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2028</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">92</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Thereafter</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Lease Payments</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">896</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Less: Imputed Interest</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(66</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Lease Liabilities</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">830</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">As of January&#160;31, 2023, the weighted-average remaining lease term and weighted-average discount rate for our operating leases are 3.8 years and 3.87%, respectively. We calculated the weighted-average discount rate using incremental borrowing rates, which equal the rates of interest that we would pay to borrow funds on a fully collateralized basis over a similar term. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Supplemental cash flow information related to leases is as follows: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 8pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 78%;"/>
<td style="vertical-align: bottom; width: 7%;"/>
<td/>
<td/>
<td/>
<td style="vertical-align: bottom; width: 7%;"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(In thousands)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Cash paid for operating lease liabilities</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">314</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">372</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -URI https://asc.fasb.org/subtopic&amp;trid=77888251<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>34
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823607840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accumulated Other Comprehensive Loss<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNoteTextBlock', window );">Accumulated Other Comprehensive Loss</a></td>
<td class="text"><div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 14&#8212;Accumulat<div style="display:inline;">ed O</div>ther Comprehensive Loss </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The changes in the balance of accumulated other comprehensive loss by component are as follows: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 92%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 60%;"/>
<td style="vertical-align: bottom; width: 8%;"/>
<td/>
<td/>
<td/>
<td style="vertical-align: bottom; width: 8%;"/>
<td/>
<td/>
<td/>
<td style="vertical-align: bottom; width: 8%;"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Foreign&#160;Currency<br/> Translation<br/> Adjustments</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/> Unrealized<br/> Gain&#160;(Losses)<br/> on&#160;Cash&#160;Flow<br/> Hedges</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance at January&#160;31, 2020</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(985</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(108</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,093</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss) before reclassification</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">710</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(239</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">471</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Amounts Reclassified from AOCI to Earnings</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">193</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">193</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Cross-Currency Interest Rate Swap Termination</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">45</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">45</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss)</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">710</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">709</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance at January&#160;31, 2021</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(275</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(109</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(384</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Loss before reclassification</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,426</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,426</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Amounts Reclassified from AOCI to Earnings</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">62</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">62</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss)</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,426</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">62</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,364</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance at January&#160;31, 2022</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,701</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(47</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,748</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss) before reclassification</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(537</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(537</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Amounts reclassified from AOCI to Earnings</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">47</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">47</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss)</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(537</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">47</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(490</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance at January&#160;31, 2023</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,238</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,238</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div></div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/><div/><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The amounts presented above in other comprehensive income (loss) are net of taxes except for translation adjustments associated with our German, Danish and Shanghai subsidiaries. </div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNoteTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for comprehensive income, which includes, but is not limited to, 1) the amount of income tax expense or benefit allocated to each component of other comprehensive income, including reclassification adjustments, 2) the reclassification adjustments for each classification of other comprehensive income and 3) the ending accumulated balances for each component of comprehensive income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -URI https://asc.fasb.org/topic&amp;trid=2134417<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 3: 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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 4: 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(19))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNoteTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823607840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Shareholders' Equity<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FederalHomeLoanBanksAbstract', window );"><strong>Federal Home Loan Banks [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">Shareholders' Equity</a></td>
<td class="text"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Note 15&#8212;Shareholders&#8217; Equity </div></div></div></div><div style="font-weight:bold;display:inline;"> </div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During fiscal years 2023 and 2022, certain of our employees delivered a total of 17,752 and 27,222 shares, respectively, of our common stock to satisfy the exercise price and related taxes for stock options exercised and restricted stock vesting. The shares delivered were valued at a total of $0.3&#160;million and $0.4&#160;millio<div style="display:inline;">n, resp</div>ectively, and are included in treasury stock in the accompanying consolidated balance sheets<div style="letter-spacing: 0px; top: 0px;;display:inline;"> a</div>t January&#160;31, 2023 and 2022. These transactions did not impact the number of shares authorized for repurchase under our current repurchase program. </div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FederalHomeLoanBanksAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FederalHomeLoanBanksAbstract</td>
</tr>
<tr>
<td style="padding-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_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -URI https://asc.fasb.org/topic&amp;trid=2208762<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<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 https://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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 16<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496180-112644<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 15: 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(e)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126731327&amp;loc=SL126733271-114008<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229822845088">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Disclosure of Compensation Related Costs, Share-based Payments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">Share-Based Compensation</a></td>
<td class="text"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 16&#8212;Share-Based Compensation </div></div><div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Company maintains the following share-based compensation plans: </div><div style="margin-top:18pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Stock Plans: </div></div></div><div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We have one equity incentive plan from which we are authorized to grant equity awards, the AstroNova, Inc. 2018 Equity Incentive Plan (the &#8220;2018 Plan&#8221;). The 2018 Plan provides for, among other things, the issuance of awards, including incentive stock options, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-qualified</div> stock options, stock appreciation rights, time-based restricted stock units (&#8220;RSUs&#8221;), or performance-based restricted stock units (&#8220;PSUs&#8221;) and restricted stock awards (RSAs). The 2018 Plan authorizes the issuance of up to 950,000 shares of common stock, plus an additional number of shares equal to the number of shares subject to awards granted under the previous equity incentive plans that are forfeited, cancelled, satisfied without the issuance of stock, otherwise terminated (other than by exercise), or, for shares of stock issued pursuant to any unvested award, that are reacquired by us at not more than the grantee&#8217;s purchase price (other than by exercise). Under the 2018 Plan, all awards to employees generally have a minimum vesting period of one year. Options granted under the 2018 Plan must be issued at an exercise price of not less than the fair market value of our common stock on the date of grant and expire after ten years. Under the 2018 Plan, there were 124,962 unvested RSUs; 128,793 unvested PSUs; 21,172 unvested RSAs and options to purchase an aggregate of 135,500 shares outstanding as of January&#160;31, 2023. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In addition to the 2018 Plan, we previously granted equity awards under our 2015 Equity Incentive Plan (the &#8220;2015 Plan&#8221;) and our 2007 Equity Incentive Plan (the &#8220;2007 Plan&#8221;). No new awards may be issued under either the 2007 or 2015 Plans, but outstanding awards will continue to be governed by those plans. As of January&#160;31, 2023, options to purchase an aggregate of 276,574 shares were outstanding under the 2007 Plan and options to purchase an aggregate of 135,125 shares were outstanding under the 2015 Plan. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We also have a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-Employee</div> Director Annual Compensation Program (the &#8220;Program&#8221;), under which each of our <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-employee</div> directors automatically receives a grant of restricted stock on the date of their <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">re-election</div> to our board of directors. The number of whole shares granted is equal to the number calculated by dividing the stock component of the director compensation amount determined by the compensation committee for that year by the fair market value of our stock on that day. The value of the restricted stock award for fiscal 2023 was $65,000. Shares of restricted stock granted under the Program become vested on the first anniversary of the date of grant, conditi<div style="display:inline;">one</div>d upon the recipient&#8217;s continued service on our board of directors through that date.</div><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div></div><div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"/><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;;text-indent: 0px;"><div style="display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Share-Based Compensation: </div></div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Share-based compensation expense has been recognized as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:70%"/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="10" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Years&#160;Ended&#160;January&#160;31</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Stock Options</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">210</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">517</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Restricted Stock Awards and Restricted Stock Units</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,271</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,266</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,285</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Employee Stock Purchase Plan</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">17</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">17</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,290</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,493</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,819</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%; text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Stock Options: </div></div></div></div>  <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Aggregated information regarding stock options granted under the plans is summarized below: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width: 72%;"/>
<td style="vertical-align: bottom; width: 6%;"/>
<td/>
<td/>
<td/>
<td style="vertical-align: bottom; width: 6%;"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number<br/> of&#160;Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/> Average<br/> Exercise<br/> Price Per<br/> Share</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Outstanding, January&#160;31, 2020</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">679,044</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14.46</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Granted</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Exercised</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,200</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7.60</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Forfeited</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(54,361</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12.89</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Cancelled</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,400</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7.36</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 72%;">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Outstanding, January&#160;31, 2021</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">622,083</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14.63</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Granted</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Exercised</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(6,425</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9.34</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Forfeited</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(17,615</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">15.09</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Cancelled</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 72%;">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Outstanding, January&#160;31, 2022</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">598,043</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14.67</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Granted</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Exercised</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(42,944</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8.74</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Forfeited</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(5,500</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">15.42</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Cancelled</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,400</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8.09</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 72%;">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Outstanding, January&#160;31, 2023</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">547,199</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">15.16</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 72%;">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table>   <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Set forth below is a summary of options outstanding at January&#160;31, 2023: </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 34%;"/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td colspan="12" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid; white-space: nowrap;;text-align:center;"><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Outstanding</div></div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Exercisable</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid; white-space: nowrap;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Range of</div></div></div></div><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Exercise prices</div></div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number&#160;of<br/>Shares</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/>Average<br/>Exercise&#160;Price</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/>Average<br/>Remaining<br/>Contractual&#160;Life</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number&#160;of<br/>Shares</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/>Average<br/>Exercise&#160;Price</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted<br/>Average<br/>Remaining<br/>Contractual<br/>Life</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-size: 0px;">
<td style="width:34%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 34%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">$5.00-10.00</div></div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 34%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">$10.01-15.00</div></div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">332,849</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13.68</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2.9</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">332,849</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13.68</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2.9</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 34%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">$15.01-20.00</div></div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">214,350</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">17.45</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4.8</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">214,350</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">17.45</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4.8</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 34%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 34%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">547,199</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">15.16</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3.7</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">547,199</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">15.16</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3.7</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 34%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">No options were granted during fiscal 2023 or fiscal 2022. As of January&#160;31, 2023, there was no unrecognized compensation expense related to the unvested stock options granted under the plans<div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">. </div></div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> </div></div></div>  <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">As of January&#160;31, 2023, the aggregate intrinsic value (the aggregate difference between the closing stock price of our common stock on January&#160;31, 2023, and the exercise price of the outstanding options) that would have been received by the option holders if all options had been exercised was $50,000 for all exercisable options and all options outstanding. The total aggregate intrinsic value of options exercised during fiscal 2023, 2022 and 2021 was $200,000, $26,000, and $4,000, <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">respectively. </div></div><br/></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;;text-indent: 0px;"><div style="display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Restricted Stock Units, Performance-Based Restricted Stock Units and Restricted Stock Awards : </div></div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Aggregated information regarding RSUs, PSUs and RSAs granted under the Plan is summarized below: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:55%"/>
<td style="vertical-align:bottom;width:14%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:14%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">RSUs,&#160;PSUs&#160;&amp;<br/> RSAs</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-Average<br/> Grant&#160;Date&#160;Fair&#160;Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Outstanding at January&#160;31, 2020</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">134,634</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">16.79</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Granted</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">245,131</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7.61</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Vested</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(64,997</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">17.28</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Forfeited</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(117,355</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8.83</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Outstanding at January&#160;31, 2021</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">197,413</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9.96</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Granted</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">151,406</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14.51</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Vested</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(126,939</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">10.43</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Forfeited</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(900</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14.26</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Outstanding at January&#160;31, 2022</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">220,980</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13.23</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Granted</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">141,371</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12.70</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Vested</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(85,324</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13.45</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Forfeited</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,100</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13.25</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Outstanding at January&#160;31, 2023</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">274,927</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12.82</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">As of January&#160;31, 2023, there was $2.0&#160;million of unrecognized compensation expense related to unvested RSUs, PSUs and RSAs. This expense is expected to be recognized over a weighted average period of 1.3 years. </div> <div style="margin-top:18pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Employee Stock Purchase Plan (ESPP): </div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">On June 7, 2022, we adopted the AstroNova Inc. 2022 Employee Stock Purchase Plan (&#8220;2022 ESPP&#8221;) to replace our previous Employee Stock Purchase Plan (the &#8220;Prior ESPP&#8221;). The 2022 ESPP allows eligible employees to purchase shares of common stock at a 15% discount from fair value on the first or last day of an offering period, whichever is less. A total of 40,000 shares were reserved for issuance under this plan and 5,045 shares were purchased under the 2022 ESSP during the year ended January&#160;31, 2023. During the periods ended January&#160;31, 2023 and January&#160;31, 2022, there were 1,550 and 8,092 shares, respectively, purchased under the Prior ESPP, and no additional purchases may be made under the Prior ESPP. As of January&#160;31, 2023, 34,955 shares remain available for purchase under the 2022 ESPP. </div> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI https://asc.fasb.org/topic&amp;trid=2228938<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 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827127968">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 17&#8212;Income Taxes </div></div>  <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The components of income (loss) before income taxes are as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:69%"/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Domestic</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,773</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,046</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,193</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,637</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,988</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,372</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,410</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7,034</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,179</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table>  <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/> <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The components of the provision for income taxes are as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 70%;"/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">(In thousands)</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-size: 0px;">
<td style="width:70%"/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Current:</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Federal</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">902</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(183</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,272</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">State</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">313</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">76</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">224</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">870</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">501</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">420</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,085</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">394</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,916</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred:</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Federal</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,053</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">180</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(910</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">State</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(315</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">177</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(189</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">32</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(146</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">78</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,336</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">211</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,021</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">749</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">605</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">895</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Total income tax provision differs from the expected tax provision as a result of the following: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:71%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Income Tax Provision at Statutory Rate</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">716</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,477</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">458</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Change in Valuation Allowance</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">182</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">57</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(81</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign Rate Differential</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">157</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">61</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">197</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Change in Reserves Related to ASC 740 Liability</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">93</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(245</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(10</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Denmark Statutory Audit</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">341</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Meals and Entertainment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Canada Withholding Taxes</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">62</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Global Intangible Low Taxed Income</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign Derived Intangible Income</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(180</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(55</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(150</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">R&amp;D Credits</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(160</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(180</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(157</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Share Based Compensation</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(52</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(95</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">171</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Return to Provision Adjustment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(22</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">368</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">State Taxes, Net of Federal Tax Effect</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">143</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">28</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">PPP Loan Forgiveness</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(937</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">17</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">749</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">605</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">895</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our effective tax rate for fiscal 2023 was 22.0% compared to 8.6% in fiscal 2022 and 41.1% in fiscal 2021. The increase in the effective tax rate in fiscal 2023 from fiscal 2022 is primarily related to the absence of the PPP loan forgiveness which is <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">tax-exempt</div> income that was a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">one-time</div> item that reduced the rate in fiscal 2022. Specific items increasing the effective tax rate in fiscal 2023 include the change in reserves related to ASC 740 liability and the increase in the valuation allowance recorded on China net operating losses. This increase was offset by state taxes, return to provision adjustments, share-based compensation, R&amp;D tax credits, and foreign derived intangible income (&#8220;FDII&#8221;) deduction. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The decrease in the effective tax rate in fiscal 2022 from fiscal 2021 is primarily related to the <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">one-time</div> impact of the PPP loan forgiveness <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">tax-exempt</div> income. Specific items decreasing the effective tax rate include PPP loan forgiveness <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">tax-exempt</div> income, R&amp;D tax credits, foreign derived intangible income (&#8220;FDII&#8221;) deduction and change in reserves related to ASC 740 liabilities. This decrease was offset by state taxes, return to provision adjustments, and taxes on foreign earnings. </div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"> </div><div/><div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The components of deferred income tax expense arise from various temporary differences and relate to items included in the statement of income. The tax effects of temporary differences that gave rise to significant portions of the deferred tax assets and liabilities are as follows: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width: 74%;"/>
<td style="vertical-align: bottom; width: 7%;"/>
<td/>
<td/>
<td/>
<td style="vertical-align: bottom; width: 7%;"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">(In thousands)</div><br/></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Tax Assets:</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Inventory</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,710</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,159</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Honeywell Royalty Liability</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,008</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,655</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">State R&amp;D Credits</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,851</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,925</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Share-Based Compensation</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">620</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">593</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Bad Debt</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">180</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">213</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Warranty Reserve</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">258</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">198</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Compensation Accrual</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">248</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">322</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Operating Loss</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">135</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">152</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">ASU 842 Adjustment &#8211; Lease Liability</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">53</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">93</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Unrecognized State Tax Benefits</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">58</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">64</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign Tax Credit</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">154</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">154</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Service Contract Revenue</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">90</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">61</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Section&#160;174 Capitalization*</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,175</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">281</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">224</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 74%;">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; text-align: right;">10,821</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; text-align: right;">8,813</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Tax Liabilities:</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accumulated Tax Depreciation in Excess of Book Depreciation</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,037</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">455</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Intangibles</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">694</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">767</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">ASU 842 Adjustment &#8211; Lease Liability</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">50</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">90</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">180</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">318</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 74%;">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; text-align: right;">1,961</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; text-align: right;">1,630</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 74%;">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Subtotal</div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">8,860</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">7,183</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td></tr>
<tr style="break-inside: avoid; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
<td style="vertical-align: top; background-color: rgba(255, 255, 255, 0); width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Valuation Allowance</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">(2,120</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">)&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">(1,778</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 74%;">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="background-color: rgb(204, 238, 255);">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Deferred Tax Assets</div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">6,740</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">5,405</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 74%;">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td></tr></table><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:2%;vertical-align:top;text-align:left;">*</td>
<td style="vertical-align:top;text-align:left;"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: left; line-height: normal;">Beginning in fiscal 2023, changes to Section&#160;174 of the Internal Revenue Code made by the Tax Cuts and Jobs Act of 2017 no longer permit an immediate deduction for research and development expenditures in the tax year that such costs are incurred. These costs are capitalized resulting in an increase in deferred tax assets of $1.2&#160;million. </div></td></tr></table><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred taxes are reflected in the consolidated balance sheet as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:78%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Tax Assets</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">6,907</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,591</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Tax Liabilities</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(167</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(186</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Net Deferred Tax Assets</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">6,740</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,405</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The valuation allowances of $2.1&#160;million at January&#160;31, 2023 and $1.8&#160;million at January&#160;31, 2022, relate to Rhode Island research and development tax credit carryforwards, foreign tax credit carryforwards, and China&#8217;s net operating losses that are expected to expire unutilized. </div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"> </div> <div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">At January&#160;31, 2023, we had net operating loss carryforwards of $0.1&#160;million in China, which expire in 2024 through 2028. We have net operating loss carryforwards of less than $0.1&#160;million in France, which can be carried forward indefinitely. We expect to utilize the net operating loss carryforwards in France before in future tax periods. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">At January&#160;31, 2023, we had state research credit carryforwards of approximately $1.9&#160;million which expire in 2023 through 2030. Additionally, we had $0.2&#160;million of foreign tax credits. We maintain a full valuation allowance against these credits as we expect these credits to expire unused. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We believe that it is reasonably possible that some unrecognized tax benefits, accrued interest and penalties could decrease income tax expense in the next year due to either the review of previously filed tax returns or the expiration of certain statutes of limitation. The changes in the balances of unrecognized tax benefits, excluding interest and penalties are as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:76%"/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance, beginning of the year</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">303</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">384</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">362</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Increases in prior period tax positions</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">24</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">63</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">59</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Increases in current period tax positions</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">136</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">67</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Reductions related to lapse of statutes of limitations</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(49</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(211</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(42</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance, end of the year</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">414</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">303</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">384</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During fiscal 2023 and 2022, we released $49,000 and $211,000, respectively, of uncertain tax positions including accrued interest and penalties relating to a change in various unrecognized tax positions. The Company has accrued potential interest and penalties of $77,000 included in income taxes payable in the accompanying consolidated balance sheet at the end of January&#160;31, 2023. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Company and its subsidiaries file income tax returns in U.S. federal jurisdictions, various state jurisdictions, and various foreign jurisdictions. In fiscal 2023, we released $27,000 related to a federal tax exposure for the fiscal 2019 tax year and $22,000 of state nexus positions as a result of the expiration of the statute of limitations. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">U.S. income taxes have not been provided on $8.5&#160;million of undistributed earnings of our foreign subsidiaries since it is our intention to permanently reinvest such earnings offshore. If the earnings were distributed in the form of dividends, the Company would not be subject to U.S. tax as a result of the Tax Act but could be subject to foreign income and withholding taxes. Determination of the amount of this unrecognized deferred income tax liability is not practical. </div> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -URI https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>38
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827057888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Nature of Operations, Segment Reporting and Geographical Information<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">Nature of Operations, Segment Reporting and Geographical Information</a></td>
<td class="text"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 18&#8212;Nature of Operations, Segment Reporting and Geographical Information </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our operations consist of the design, development, manufacture and sale of specialty printers and data acquisition and analysis systems, including both hardware&#160;and software and related consumable supplies. We organize and manage our business as a portfolio of products and services designed around a common theme of data acquisition and information output. We have two reporting segments consistent with our revenue product groups: Product Identification (&#8220;PI&#8221;) and Test&#160;&amp; Measurement (&#8220;T&amp;M&#8221;). </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our PI segment produces an array of high-technology digital color and monochrome label printers and mini presses, labeling software and supplies for a variety of commercial industries worldwide and includes our newly acquired Astro Machine. AstroNova&#8217;s T&amp;M segment produces data acquisition systems used worldwide for a variety of recording, monitoring and troubleshooting applications for many industries including aerospace, automotive, defense, rail, energy, industrial and general manufacturing. The T&amp;M segment also includes our line of aerospace flight deck and cabin printers. </div> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"> </div>  <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Business is conducted in the United States and through foreign branch offices and subsidiaries in Canada, Europe, China, Southeast Asia and Mexico. Manufacturing activities are primarily conducted in the United States. Revenue and service activities outside the United States are conducted through wholly owned entities and, to a lesser extent, through authorized distributors and agents. Transfer prices are intended to produce gross profit margins as would be associated with an arms-length transaction. </div></div></div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The accounting policies of the reporting segments are the same as those described in the summary of significant accounting policies herein. We evaluate segment performance based on the segment profit before corporate and financial administration expenses. </div>  <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Summarized below are the revenue and segment operating profit (loss) (both in dollars and as a percentage of revenue) for each reporting segment: </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 36%;"/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">($ in thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Revenue</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Segment&#160;Operating&#160;Profit<br/>(Loss)</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Segment&#160;Operating&#160;Profit&#160;(Loss)<br/>as&#160;a&#160;% of Revenue</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="font-size: 0px;">
<td style="width: 36%;"/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Product Identification</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">103,089</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">90,915</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">90,268</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7,889</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">10,411</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12,885</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7.7</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11.5</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14.3</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">T&amp;M</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">39,438</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">26,565</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">25,765</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8,989</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,398</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,032</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">22.8</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12.8</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(4.0</td>
<td style="white-space:nowrap;vertical-align:bottom">)%&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">142,527</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">117,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">116,033</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">16,878</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13,809</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11,853</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11.8</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11.8</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">10.2</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Corporate Expenses</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11,435</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,553</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,420</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Operating Income</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,443</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,256</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,433</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Income (Expense), Net</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,033</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,778</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(254</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Income Before Income Taxes</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,410</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7,034</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,179</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Income Tax Provision</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">749</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">605</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">895</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Income</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,661</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">6,429</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,284</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr> </table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">No customer accounted for greater than 10% of net revenue in fiscal 2023, 2022 or 2021. </div>  <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Other information by segment is presented below: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:72%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Assets</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Product Identification</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">69,607</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">51,732</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">T&amp;M</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">60,730</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">50,374</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Corporate*</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8,870</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12,849</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">139,207</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">114,955</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/> <div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:2%;vertical-align:top;text-align:left;">*</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: left; line-height: normal;">Corporate assets consist principally of cash, cash equivalents, deferred tax assets and refunds, and certain prepaid corporate assets. </div> </td> </tr> </table> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:60%"/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Depreciation and<br/> Amortization</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Capital Expenditures</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Product Identification</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,219</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,157</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,835</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">121</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">847</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,563</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">T&amp;M</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,697</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,837</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,148</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">108</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">949</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,024</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,916</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,994</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,983</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">229</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,796</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,587</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table>  <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div><br/></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div></div>   <div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Geographical Data </div></div></div></div>  <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Presented below is selected financial information by geogr<div style="letter-spacing: 0px; top: 0px;;display:inline;">ap</div>hic area:</div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:57%"/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Long-Lived&#160;Assets*</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Revenue</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; padding-bottom: 0.5pt;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">United States</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">91,917</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">68,185</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">70,911</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">34,277</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">29,131</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Europe</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">31,021</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">31,922</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">29,029</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,230</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,486</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Canada</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8,393</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">6,519</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,574</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Asia</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,345</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,926</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,105</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">15</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Central and South America</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,589</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,271</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,950</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,262</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,657</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,464</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">142,527</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">117,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">116,033</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">35,520</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">30,641</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/> <div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-size: 10pt; border: 0px; width: 100%;">
<tr style="page-break-inside:avoid">
<td style="width:2%;vertical-align:top;text-align:left;">*</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; line-height: normal;">Long-lived assets exclude goodwill assigned to the T&amp;M segment of $4.5&#160;million at both January&#160;31, 2023 and 2022 and $10.1&#160;million and $7.6&#160;million assigned to the PI segment at January&#160;31, 2023 and 2022, respectively.&#160;</div> </td> </tr> </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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/topic&amp;trid=2134510<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>39
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229822845088">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefit Plans<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PostemploymentBenefitsAbstract', window );"><strong>Postemployment Benefits [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock', window );">Employee Benefit Plans</a></td>
<td class="text"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 19&#8212;Employee Benefit Plans </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We sponsor a Profit-Sharing Plan (the &#8220;Plan&#8221;) which provides retirement benefits to all eligible domestic employees. The Plan allows participants to defer a portion of their cash compensation and contribute such deferral to the Plan through payroll deductions. The Company makes matching contributions up to specified levels. The deferrals are made within the limits prescribed by Section&#160;401(k) of the Internal Revenue Code. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">All contributions are deposited into trust funds. It is our policy to fund any contributions accrued. Our annual contribution amounts are determined by the Board of Directors. Contributions paid or accrued amounted to $0.5&#160;million in fiscal 2023, $0.5&#160;million in fiscal 2022 and $0.4&#160;million in fiscal 2021. </div> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for an entity's employee compensation and benefit plans, including, but not limited to, postemployment and postretirement benefit plans, defined benefit pension plans, defined contribution plans, non-qualified and supplemental benefit plans, deferred compensation, share-based compensation, life insurance, severance, health care, unemployment and other benefit plans.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI https://asc.fasb.org/topic&amp;trid=2228938<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 712<br> -URI https://asc.fasb.org/topic&amp;trid=2197446<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 710<br> -URI https://asc.fasb.org/topic&amp;trid=2127225<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -URI https://asc.fasb.org/topic&amp;trid=2235017<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CompensationAndEmployeeBenefitPlansTextBlock</td>
</tr>
<tr>
<td style="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_PostemploymentBenefitsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PostemploymentBenefitsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827127968">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Product Warranty Liability<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GuaranteesAndProductWarrantiesAbstract', window );"><strong>Guarantees and Product Warranties [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyDisclosureTextBlock', window );">Product Warranty Liability</a></td>
<td class="text"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 20&#8212;Product Warranty Liability </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We offer a manufacturer&#8217;s warranty for the majority of our hardware products. The specific terms and conditions of warranty vary depending upon the products sold and the country in which we do business. We estimate the warranty costs based on historical claims experience and record a liability in the amount of such estimates at the time product revenue is recognized. We regularly assess the adequacy of our recorded warranty liabilities and adjust the amounts as necessary. Activity in the product warranty liability, which is included in other accrued expenses in the accompanying consolidated balance sheet, is as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:68%"/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">(</div>In thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance, beginning of the year</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">834</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">730</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">850</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Provision for Warranty Expense</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,077</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,174</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">855</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Cost of Warranty Repairs</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,839</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,070</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(975</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance, end of the year</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,072</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">834</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">730</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table>  <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"><br/></div>  <div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During fiscal 2022, we incurred incremental costs because of a product quality issue with one of our vendors. As the result of discussions with the vendor, which was responsible for the product quality issue, we entered into an agreement wh<div style="letter-spacing: 0px; top: 0px;;display:inline;">ere</div>by the vendor paid us $975,000 as partial reimbursement of the costs we incurred in supporting our customers with respect to the product quality issue. For the period ended January&#160;31, 2022, we recorded this payment to offset cost of goods in our PI segment for the product lines effected to partially reverse the accounting impact when the original costs of the quality issues were <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">incurred. </div></div></div> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GuaranteesAndProductWarrantiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GuaranteesAndProductWarrantiesAbstract</td>
</tr>
<tr>
<td style="padding-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_ProductWarrantyDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for standard and extended product warranties and other product guarantee contracts, including a tabular reconciliation of the changes in the guarantor's aggregate product warranty liability for the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -URI https://asc.fasb.org/topic&amp;trid=2155896<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827298144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Concentration of Risk<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RisksAndUncertaintiesAbstract', window );"><strong>Risks and Uncertainties [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskDisclosureTextBlock', window );">Concentration of Risk</a></td>
<td class="text"> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div></div>   <div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Note 21&#8212;Concentration of Risk </div></div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Credit is generally extended on an uncollateralized basis to almost all customers after review of credit worthiness. Concentration of credit and geographic risk with respect to accounts receivable is limited due to the large number and general dispersion of accounts, which constitute our customer base. We periodically perform <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">on-going</div> credit evaluations of our customers. We have not historically experienced significant credit losses on collection of our accounts receivable. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">During the years ended January&#160;31, 2023, 2022 and 2021, one vendor accounted for 18.7%, 23.3% and 23.2% of purchases, respectively, and 16.2%, 15.4% and 28.3% of accounts payable, respectively, as of January&#160;31, 2023, 2022 and 2021. </div> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for 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="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 https://asc.fasb.org/topic&amp;trid=2134479<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RisksAndUncertaintiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RisksAndUncertaintiesAbstract</td>
</tr>
<tr>
<td style="padding-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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229829096192">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text"> <div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 22&#8212;Commitments and Contingencies </div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In order to meet our manufacturing demands and, in some cases, lock in particular pricing structures for specific goods used in manufacturing, we enter into purchase commitments with our suppliers. At January&#160;31, 2023, our purchase commitments totaled $25.8&#160;million, with $22.8&#160;million due within 12 months, some of which are <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-cancelable.</div> </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We are also subject to contingencies, including legal proceedings and claims arising in the normal course of business that cover a wide range of matters including, among others, contract and employment claims; workers compensation claims; product liability; warranty and modification; and adjustment or replacement of component parts of units sold. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Direct costs associated with the estimated resolution of contingencies are accrued at the earliest date at which it is deemed probable that a liability has been incurred and the amount of such liability can be reasonably estimated. While it is impossible to ascertain the ultimate legal and financial liability with respect to contingent liabilities, including lawsuits, we believe that the aggregate amount of such liabilities, if any, in excess of amounts provided or covered by insurance, will not have a material adverse effect on the consolidated financial position or results of operations. It is possible, however, that future results of operations for any particular future period could be materially affected by changes in our assumptions or strategies related to these contingencies or changes out of our control. </div> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -URI https://asc.fasb.org/topic&amp;trid=2144648<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=6491277&amp;loc=d3e6429-115629<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI https://asc.fasb.org/topic&amp;trid=2127136<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 https://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 https://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827245136">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresTextBlock', window );">Fair Value Measurements</a></td>
<td class="text"><div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Note 23&#8212;Fair Value Measurements </div></div><div style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><div style="font-weight:bold;display:inline;">Assets and Liabilities Not Recorded at Fair Value on the Cons<div style="letter-spacing: 0px; top: 0px;;display:inline;">olid</div>ated Balance Sheet </div></div><div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our long-term debt, including the current portion of long-term debt not reflected in the financial statements at fair value, is reflected in the table below: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:66%"/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fair&#160;Value Measurement at<br/> January&#160;31, 2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;1</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;2</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;3</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Long-Term Debt and Related Current Maturities</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,310</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,310</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1pt">
<td style="height:12pt">&#160;</td>
<td colspan="16" style="height:12pt">&#160;</td>
<td colspan="4" style="height:12pt">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fair&#160;Value Measurement at<br/> January&#160;31, 2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;1</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;2</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;3</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Long-Term Debt and Related Current Maturities</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,255</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,255</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The fair value of our long-term debt, including the current portion, is estimated by discounting the future cash flows using current interest rates at which similar borrowings with the same maturities would be made to borrowers with similar credit ratings and is classified as Level&#160;3. </div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-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_FairValueDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827293488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule II - Valuation and Qualifying Accounts and Reserves<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ValuationAndQualifyingAccountsAbstract', window );"><strong>SEC Schedule, 12-09, Valuation and Qualifying Accounts [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock', window );">Schedule II - Valuation and Qualifying Accounts and Reserves</a></td>
<td class="text"><div id="tx415415_8" style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: center;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">SCHEDULE II&#8212;VA<div style="display:inline;">LUA</div>TION AND Q<div style="display:inline;">U</div>AL<div style="display:inline;">IFY</div>ING ACCOUNTS AND RESERVES</div></div></div></div><div style="null;text-indent: 0px;;font-weight:bold;display:inline;"> </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;;text-indent: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width:63%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap;text-align:center;"><div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; text-align: center; line-height: normal;"><div style="font-weight:bold;display:inline;">Description</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Balance&#160;at<br/>Beginning<br/>of Year</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Provision/<br/>(Benefit)<br/>Charged&#160;to<br/>Operations</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Deductions(2)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Balance<br/>at End<br/>of&#160;Year</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 63%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Allowance for Doubtful Accounts (1):</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">(In thousands)</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 63%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Year Ended January&#160;31,</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 63%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2023</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">826</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">100</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(195</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">731</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 63%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2022</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,054</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">50</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(278</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">826</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 63%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2021</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">856</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">194</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,054</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table><div style="line-height: 8pt; margin-top: 0px; margin-bottom: 0px; border-bottom: 1px solid rgb(0, 0, 0); width: 11%;;text-indent: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%;text-indent: 0px;">
<tr style="page-break-inside:avoid">
<td style="width:4%;vertical-align:top;text-align:left;">(1)</td>
<td style="vertical-align:top;text-align:left;"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: left; line-height: normal;">The allowance for doubtful accounts has been netted against accounts receivable in the balance sheets as of the respective balance sheet dates. </div></td></tr></table>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%;text-indent: 0px;">
<tr style="page-break-inside:avoid">
<td style="width:4%;vertical-align:top;text-align:left;">(2)</td>
<td style="vertical-align:top;text-align:left;"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: left; line-height: normal;">Uncollectible accounts written off, net of recoveries. </div></td></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for valuation and qualifying accounts and reserves.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher SEC<br> -Name Regulation S-X (SX)<br> -Number 210<br> -Section 12<br> -Subsection 09<br><br>Reference 2: 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 4<br> -Subparagraph (SX 210.12-09)<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24092-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>srt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ValuationAndQualifyingAccountsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ValuationAndQualifyingAccountsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>srt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229819740288">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of Presentation</a></td>
<td class="text"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Basis of Presentation:</div></div> The accompanying financial statements and accompanying notes have been prepared by us pursuant to the rules and regulations of the U.S. Securities and Exchange Commission (&#8220;SEC&#8221;) and are presented in conformity with U.S. generally accepted accounting principles (&#8220;U.S. GAAP&#8221;). Our fiscal year end is January&#160;31. Unless otherwise stated, all years and dates refer to our fiscal year. </div> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConsolidationPolicyTextBlock', window );">Principles of Consolidation</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Principles of Consolidation: </div></div>The consolidated financial statements include the accounts of AstroNova, Inc. and its subsidiaries. All material intercompany accounts and transactions are eliminated in consolidation. </div> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PriorPeriodReclassificationAdjustmentDescription', window );">Reclassification</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Reclassification: </div></div>Certain amounts in prior year&#8217;s financial statements have been reclassified to conform to the current year&#8217;s presentation. </div> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of Estimates</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Use of Estimates: </div></div>The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect these financial statements and accompanying notes using information that is reasonably available to us at this time. Some of the more significant estimates relate to revenue recognition; the allowances for doubtful accounts; inventory valuation; income taxes; valuation of long-lived assets, intangible assets and goodwill; share-based compensation; and warranty reserves. Management&#8217;s estimates are based on the facts and circumstances available at the time estimates are made, historical experience, risk of loss, general economic conditions and trends, and management&#8217;s assessments of the probable future outcome of these matters, including our expectations at the time<div style="letter-spacing: 0px; top: 0px;;display:inline;"> regarding</div> the ongoing impact from the <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">COVID-19</div> pandemic. Consequently, actual results could differ from those estimates. </div> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Cash and Cash Equivalents:</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"> </div></div>Highly liquid investments with an original maturity of 90 days or less are considered to be cash equivalents. At<div style="letter-spacing: 0px; top: 0px;;display:inline;"> January</div>&#160;31, 2023 and 2022, $3.2&#160;million and $3.7&#160;million, respectively, was held in foreign bank accounts. </div> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventories</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Inventories:</div></div> Inventories are stated at the lower of standard and average cost or net realizable value and include material, labor and manufacturing overhead. </div> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property, Plant and Equipment</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Property, Plant and Equipment: </div></div><div style="letter-spacing: 0px; top: 0px;;display:inline;">Property</div>, plant and equipment are stated at cost less accumulated depreciation. Depreciation is provided on the straight-line basis over the estimated useful lives of the assets (land improvements&#8212;10 to 20 years; buildings and leasehold improvements&#8212;10 to 45 years; machinery and equipment&#8212;3 to 10 years and <div style="letter-spacing: 0px; top: 0px;;display:inline;">computer</div> equipment and software&#8212;3 to 10 years). </div> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRecognitionPolicyTextBlock', window );">Revenue Recognition</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Revenue Recognition: </div></div>We recognize revenue in accordance with Accounting Standards Codification (&#8220;ASC&#8221;) 606 &#8220;Revenue from Contracts with Customers (&#8220;ASC 606&#8221;).&#8221;&#160;The core principle of ASC&#160;606 is to recognize revenue when promised goods or services are transferred to customers in an amount that reflects the consideration that is expected to be received for those goods or services. ASC&#160;606 defines a five-step process to recognize revenue and requires judgment and estimates within the revenue recognition process, including identifying contracts with customers, identifying performance obligations in the contract, determining and estimating the amount of any variable consideration to include in the transaction price and allocating the transaction price to each separate performance obligation and recognizing revenue when the entity satisfies each performance obligation. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The vast majority of our revenue is generated from the sale of distinct products. Revenue is measured as the amount of consideration we expect to receive in exchange for such products, which is generally at the contractually stated prices, and is recognized when we satisfy a performance obligation by transferring control of </div>  <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">a product to a customer. The transfer of control generally occurs at one point in time, upon shipment, when title and risk of loss pass to the customer. Returns and customer credits are infrequent and are recorded as a reduction to revenue. Sales taxes and value added taxes collected concurrently with revenue generating activities are excluded from revenue. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Many of the contracts entered into with customers are commonly comprised of a combination of equipment, supplies, installation and/or training services. We determine performance obligations by assessing whether the products or services are distinct from other elements of the contract. In order to be distinct, the product must perform either on its own or with readily available resources and must be separate within the context of the contract. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Most of our hardware products contain embedded operating systems and data management software which is included in the purchase price of the equipment. The software is deemed incidental to the systems as a whole, as it is not sold or marketed separately, and its production costs are minor compared to those of the hardware system. Hardware and software elements are typically delivered at the same time and are accounted for as a single performance obligation for which revenue is recognized at the point in time when ownership is transferred to the customer. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Installation and training services vary based on certain factors such as the complexity of the equipment, staffing availability in a geographic location and customer preferences, and can range from a few days to a few months. The delivery of installation and training services are not assessed to determine whether they are separate performance obligations, as the amounts are not material to the contract. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Shipping and handling activities that occur after control over a product has transferred to a customer are accounted for as fulfillment activities rather than performance obligations, as allowed under a practical expedient provided by ASC 606. The shipping and handling fees charged to customers are recognized as revenue and the related costs are included in cost of revenue at the point in time when ownership of the product is transferred to the customer. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We may perform services at the request of the customer, generally for the repair and maintenance of products previously sold. These services are short in duration and total approximately 5.0% and 4.4% of revenue for the years ended January&#160;31, 2023 and 2022, respectively. Revenue is recognized as services are rendered and accepted by the customer. We also provide service agreements on certain of our Product Identification equipment. Service agreements are purchased separately from the equipment and provide for the right to obtain service and maintenance on the equipment for a period of typically one to two years. Accordingly, revenue on these agreements is recognized over the term of the agreements.&#160;The portion of service agreement contracts that are uncompleted at the end of any reporting period are included in deferred revenue. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We generally provide warranties for our products. The standard warranty period is typically 12 months for most hardware products except for airborne printers, which typically have warranties that extend for <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">3-5</div> years, consistent with industry practice. Such assurance-type warranties are not deemed to be separate performance obligations from the hardware product and costs associated with providing the warranties are accrued in accordance with ASC 450, &#8220;Contingencies,&#8221; as we have the ability to ascertain the likelihood of the liability and can reasonably estimate the amount of the liability. Our estimate of costs to service the warranty obligations is based on historical experience and expectations of future conditions. To the extent that our experience in warranty claims or costs associated with servicing those claims differ from the original estimates, revisions to the estimated warranty liability are recorded at that time, with an offsetting adjustment to cost of revenue.&#160;On occasion, customers request a warranty period longer than our standard warranty. In those instances, in which extended warranty services are separately quoted to the customer, an additional performance obligation is created, and the associated revenue is deferred and recognized as service revenue ratably over the term of the extended warranty period. The portion of service contracts and extended warranty services agreements that are uncompleted at the end of any reporting period are included in deferred revenue. </div><div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/><div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We recognize and subsequently amortize an asset for the incremental direct costs of obtaining a contract with a customer if we expect the benefit of those costs to be longer than one year (Refer to Note 3, &#8220;Revenue Recognition&#8221; included in our notes to the consolidated financial statement). We apply the practical expedient to expense costs incurred for costs to obtain a contract when the amortization period would have been less than a year. These costs include sales commissions paid to the internal direct sales team as well as to third-party representatives and distributors.&#160;Contractual agreements with each of these parties outline commission structures and rates to be paid.&#160;Generally speaking, the contracts are all individual procurement decisions by the customers and do not include renewal provisions and, as such, the majority of the contracts have an economic life of significantly less than a year.</div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReceivablesPolicyTextBlock', window );">Accounts Receivables and Allowance for Doubtful Accounts</a></td>
<td class="text"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Accounts Receivables and Allowance for Doubtful Accounts: </div></div>Standard payment terms are typically 30&#160;days after shipment but vary by type and geographic location of our customer. Credit is extended based upon an evaluation of the customer&#8217;s financial condition. In circumstances where we are aware of a customer&#8217;s inability to meet its financial obligations, an allowance is established. The remainder of the allowance established is based on a variety of factors, including the age of amounts outstanding relative to their contractual due date, historical <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">write-off</div> experience and current market assessments. Accounts receivable are stated at their estimated net realizable value. </div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationsPolicy', window );">Business Combinations</a></td>
<td class="text"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style:italic;display:inline;">Business Combinations: </div>We account for business acquisitions under the acquisition method of accounting in accordance with&#160;ASC 805, &#8216;&#8216;Business Combinations,&#8217;&#8217; where the total purchase price is allocated to the tangible and identified intangible assets acquired and liabilities assumed based on their estimated fair values. The purchase price is allocated using the information currently available, and may be adjusted, up to one year from acquisition date, after obtaining more information regarding, among other things, asset valuations, liabilities assumed and revisions to preliminary estimates. The purchase price in excess of the fair value of the tangible and identified intangible assets acquired less liabilities assumed is recognized as goodwill. Determining the fair value of assets acquired and liabilities assumed requires management to use significant judgment and estimates, including the selection of valuation methodologies, estimates of future revenue, costs and cash flows, discount rates, and selection of comparable companies. Management&#8217;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and unpredictable. As a result, actual results may differ from these estimates. During the measurement period, we may record adjustments to acquired assets and assumed liabilities, with corresponding offsets to goodwill. Upon the conclusion of a measurement period, any subsequent adjustments are recorded to earnings. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">At the acquisition date, the Company measures the fair values of all assets acquired and liabilities assumed that arise from contractual contingencies. The Company also measures the fair values of all <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-contractual</div> contingencies if, as of the acquisitions date, it is more likely than not that the contingencies will give rise to assets or liabilities. </div><div style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Acquisition related costs not considered part of the considerations are expensed as incurred and recorded in Acquisition costs within the consolidated statement of operations. </div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpensePolicy', window );">Research and Development Costs</a></td>
<td class="text"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="display:inline;">Research</div> and Development Costs: </div></div>We charge costs to expense in the period incurred, and these expenses are presented in the consolidated statement of income. The following costs are included in research and development expense: salaries and benefits, external engineering service costs, engineering related information costs and supplies. </div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Foreign Currency Translation</a></td>
<td class="text"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Foreign Currency Translation: </div></div>The financial statements of foreign subsidiaries and branches are measured using the local currency as the functional currency. Foreign currency-denominated assets and liabilities are translated into U.S. dollars at <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">year-end</div> exchange rates with the translation adjustment recorded as a component of accumulated comprehensive income (loss) in shareholders&#8217; equity. Revenues and expenses are translated at the average monthly exchange rates in effect during the related period. We do not provide for U.S. income taxes on foreign currency translation adjustments associated with our subsidiaries in Germany, Denmark and China since </div><div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">their undistributed earnings are considered to be permanently invested. Included in our consolidated statements of income was a net transaction foreign exchange loss of $0.5&#160;million and $0.3&#160;million in fiscal 2022 and 2023, respectively, and a net transaction foreign exchange gain of $0.6&#160;million in fiscal 2021. </div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdvertisingCostsPolicyTextBlock', window );">Advertising</a></td>
<td class="text"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Advertising: </div></div>We expense advertising costs as incurred. Advertising costs including advertising production, trade shows and other activities are designed to enhance demand for our products and amounted to approximately $1.6&#160;million, $1.3&#160;million, and $0.9&#160;million in fiscal years 2023, 2022, and 2021, respectively. </div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Long-Lived Assets</a></td>
<td class="text"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Long-Lived Assets: </div></div>Long-lived assets to be held and used are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of such assets may not be recoverable. Determination of recoverability is based on an estimate of undiscounted future cash flows resulting from the use of the asset and its eventual disposition. If the projected undiscounted cash flows are less than the carrying value, then an impairment charge would be recorded for the excess of the carrying value over the fair value, as determined by the discounting of future cash flows. There were no impairment charges for our long-lived assets in fiscal years 2023, 2022, or 2021. </div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy', window );">Intangible Assets</a></td>
<td class="text"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Intangible Assets: </div></div>Intangible assets include the value of customer and distributor relationships, trademarks and existing technology acquired in connection with business and asset acquisitions and are stated at cost (fair value at acquisition) less accumulated amortization. These intangible assets have a definite life and are amortized over the assets&#8217; useful lives using a systematic and rational basis which is representative of the assets&#8217; use. Intangible assets with a definite life are tested for impairment whenever events or circumstances indicate that the carrying amount of an asset (asset group) may not be recoverable. If necessary, an impairment loss is recognized when the carrying amount of an asset exceeds the estimated undiscounted cash flows used in determining the fair value of the asset. The amount of the impairment loss recorded is calculated by the excess of the asset&#8217;s carrying value over its fair value. Fair value is generally determined using a discounted cash flow analysis. There were no impairment charges for our intangible assets in fiscal years 2023, 2022, or 2021. </div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy', window );">Goodwill</a></td>
<td class="text"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Goodwill: </div></div>Goodwill represents the excess of the aggregate purchase price over the fair value of the net assets acquired in a purchase business combination. Management evaluates the recoverability of goodwill annually or more frequently if events or changes in circumstances, such as declines in revenue, earnings or cash flows, or material adverse changes in the business climate indicate that the carrying value of an asset might be impaired. Goodwill is tested for impairment at the reporting unit level. A reporting unit is an operating segment, or a business unit one level below an operating segment if discrete financial information for that business is prepared and regularly reviewed by segment management. However, components within an operating segment are aggregated as a single reporting unit if they have similar economic characteristics. We determined that each of our operating segments (Product Identification (&#8220;PI&#8221;) and Test&#160;&amp; Measurement (&#8220;T&amp;M&#8221;) represents a reporting unit for purposes of&#160;goodwill impairment testing. </div><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The accounting guidance related to&#160;goodwill impairment testing allows for the performance of an optional qualitative assessment of whether it is more likely than not that the fair value of a reporting unit is less than its carrying value. Factors that management considers in this qualitative assessment include macroeconomic conditions, industry and market considerations, overall financial performance (both current and projected), changes in management and strategy and changes in the composition or carrying amount of net assets. If this qualitative assessment indicates that it is more likely than not that the fair value of a reporting unit is less than its carrying value, then a quantitative assessment is required for the reporting unit. Additionally, we can elect to forgo the qualitative assessment and perform the quantitative test. The quantitative assessment compares the fair value of the reporting unit with its carrying value. If the quantitative assessment is performed, we estimate the fair value of our reporting units using a blended income and market approach. The income approach is based on a discounted cash flow model and provides a fair value estimate based upon the reporting unit&#8217;s expected long-term operating cash flow performance. The market approach compares the reporting unit to publicly traded companies and transactions involving similar business, and requires the use of many assumptions and estimates including future revenue, expenses, capital expenditures, and working capital, as well as discount factors and </div><div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&#160;</div><div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">income tax rates. If the fair value of the reporting unit exceeds the carrying value of the net assets including&#160;goodwill&#160;assigned to that unit,&#160;goodwill&#160;is not impaired. If the carrying value of the reporting unit&#8217;s net assets including&#160;goodwill&#160;exceeds the fair value of the reporting unit, then we record an impairment charge based on that difference. We performed a qualitative assessment for our fiscal 2023 analysis of goodwill. Based on this assessment, management does not believe that it is more likely than not that the carrying values of the reporting units exceed their fair values. Accordingly, no quantitative assessment was performed. There were no impairment charges for our goodwill in fiscal years 2023, 2022, or 2021.</div> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LessorLeasesPolicyTextBlock', window );">Leases</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Leases: </div></div>We account for our leases in accordance with ASC 842, &#8220;Leases&#8221; (&#8220;ASC 842&#8221;). ASC 842 requires a lessee to recognize assets and liabilities on the balance sheet for all leases, with the result being the recognition of a right of use (&#8220;ROU&#8221;) asset and a lease liability. The lease liability is equal to the present value of the minimum lease payments for the term of the lease, including any optional renewal periods determined to be reasonably certain to be exercised, using a discount rate determined at lease commencement. This discount rate is the rate implicit in the lease, if known; otherwise, the incremental borrowing rate for the expected lease term is used. Our incremental borrowing rate approximates the rate we would have to pay to borrow on a collateralized basis over a similar term at lease inception. The value of the ROU asset is equal to the initial measurement of the lease liability plus any lease payments made to the lessor at or before the commencement date and any unamortized initial direct costs incurred by the lessee, less any unamortized lease incentives received. Several of our lease contracts include options to extend the lease term and we include the renewal options for these leases in the determination of the ROU asset and lease liability when the likelihood of renewal is determined to be reasonably certain. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We enter into lease contracts for certain of our facilities at various locations worldwide. At inception of a contract, we determine whether the contract is or contains a lease. If we have a right to obtain substantially all of the economic benefits from the use of the identified asset and the right to direct the use of the asset, then the contract contains a lease. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">There are two types of leases, operating leases and finance leases. Lease classification is determined at lease commencement. We have made an accounting policy election to apply the short-term exception, which does not require the capitalization of leases with terms of 12 months or less. All of our leases are classified as operating leases. Operating lease expense is recognized on a straight-line basis over the lease term and included in general and administrative expense on the consolidated statement of income. ROU assets are classified as such on the consolidated balance sheet, short-term lease liabilities are classified in accrued expenses, and long-term lease liabilities are classified as such in the consolidated balance sheet. In the statement of cash flow, payments for operating leases are classified as operating activities. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In addition, several of our lease agreements include <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-lease</div> components for items such as common area maintenance and utilities which are accounted for separately from the lease component. </div> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Income Taxes: </div></div>We use the liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are determined based on the differences between the financial reporting basis and tax basis of the assets and liabilities and are measured using statutory tax rates that will be in effect when the differences are expected to reverse. Our deferred taxes are presented as <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-current</div> in the accompanying consolidated balance sheet. An allowance against deferred tax assets is recognized when it is <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">more-likely-than-not</div> that some portion or all of the deferred tax assets will not be realized. At January&#160;31, 2023, a valuation allowance was provided for deferred tax assets attributable to certain domestic R&amp;D, foreign tax credit carryforwards and China net operating losses, all of which are expected to expire unused. At January&#160;31, 2022, a valuation allowance was provided for deferred tax assets attributed to certain domestic R&amp;D and foreign tax credit carryforwards. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We account for uncertain tax positions in accordance with the guidance provided in ASC 740, &#8220;Accounting for Income Taxes.&#8221; This guidance describes a recognition threshold and measurement attribute for the financial statement disclosure of tax positions taken or expected to be taken in a tax return and requires recognition of tax </div> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/>    <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">benefits that satisfy a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">more-likely-than-not</div> threshold. ASC 740 also provides guidance on <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">de-recognition,</div> classification, interest and penalties, accounting in interim periods and disclosure. </div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On March&#160;27,&#160;2020,&#160;the Coronavirus Aid,&#160;Relief,&#160;and Economic Security Act (&#8220;CARES Act&#8221;)&#160;was signed into law. The&#160;legislation had sweeping effects including various types of economic relief for impacted businesses and industries. One&#160;such&#160;relief&#160;provision&#160;was&#160;the Paycheck Protection Program, which provided short-term cash flow assistance to finance employee payroll and qualified expenses. On May&#160;6, 2020, we entered into a loan agreement with, and executed a promissory note in favor of Greenwood Credit Union (&#8220;Greenwood&#8221;) pursuant to which we borrowed</div></div>&#160;$4.4 <div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">million (the &#8220;PPP Loan&#8221;). On December&#160;27, 2020, the Consolidated Appropriations Act, 2021, H.R. 133 was signed into law. The legislation permits the deductibility of expenses to the extent that the payment of such expenses results (or is expected to result) in the forgiveness of a loan (covered loan) guaranteed under the Paycheck Protection Program. We have fully utilized the PPP Loan proceeds for qualifying expenses and applied for forgiveness <br/>of the PPP Loan. Consistent with the legislation, we deducted the full</div></div>&#160;$4.4 million of qualified expenses on our 2020 federal tax return. On June 15, 2021, Greenwood notified us that the United States Small Business Administration (the &#8220;SBA&#8221;) approved our application for forgiveness of the entire $4.4 million principal balance of our PPP Loan and all accrued interest thereon. As a result, in the second quarter of fiscal 2022, we recorded a<br/> $4.5 million gain on extinguishment of debt. The PPP loan forgiveness is excluded from taxable income under Section 1106(i) of the CARES Act. </div> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerSharePolicyTextBlock', window );">Net Income Per Common Share</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Net Income Per Common Share: </div></div>Basic net income per share is based on the weighted average number of shares outstanding during the period. Diluted net income per share is based on the basic weighted average number of shares and potential common equivalent shares for stock options, restricted stock awards and restricted stock units outstanding during the period using the treasury stock method. In fiscal years 2023, 2022, and 2021, there were 685,667; 345,085; and 642,623, respectively, common equivalent shares that were not included in the computation of diluted net income per common share because their inclusion would be anti-dilutive. </div> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueOfFinancialInstrumentsPolicy', window );">Fair Value Measurement</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Fair Value Measurement: </div></div>We measure our assets and liabilities at fair value on a recurring and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-recurring</div> basis in accordance with the guidance provided in ASC 820, &#8220;Fair Value Measurement and Disclosures,&#8221; which defines fair value as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. In addition, ASC 820 establishes a three-tiered hierarchy for inputs used in management&#8217;s determination of fair value of financial instruments that emphasizes the use of observable inputs over the use of unobservable inputs by requiring that observable inputs be used when available. Observable inputs are inputs that reflect management&#8217;s belief about the assumptions market participants would use in pricing a financial instrument based on the best information available in the circumstances. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The fair value hierarchy is summarized as follows: </div> <div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top;text-align:left;">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt; text-align: left; line-height: normal;">Level 1&#8212;Quoted prices in active markets for identical assets or liabilities; </div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top;text-align:left;">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt; text-align: left; line-height: normal;">Level 2&#8212;Inputs other than Level&#160;1 that are observable, either directly or indirectly, such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities; and </div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:5%">&#160;</td>
<td style="width:3%;vertical-align:top;text-align:left;">&#8226;</td>
<td style="width:1%;vertical-align:top">&#160;</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt; text-align: left; line-height: normal;">Level 3&#8212;Unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities </div> </td> </tr> </table> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Cash and cash equivalents, accounts receivable, accounts payable, accrued compensation, other accrued expenses and income tax payable are reflected in the consolidated balance sheet at carrying value, which approximates fair value due to the short-term nature of these instruments. </div> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SelfInsuranceReservePolicyTextBlock', window );">Self-Insurance</a></td>
<td class="text"> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/>   <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Self-Insurance:</div></div> We are self-insured for U.S. medical and dental benefits for qualifying employees and maintain stop-loss coverage from a third party which limits our exposure to large claims. We record a liability associated with these benefits that includes an estimate of both claims filed and losses incurred but not yet reported based on historical claims experience. In estimating this accrual, we utilize an independent third-party broker to estimate a range of expected losses, which are based on analyses of historical data. Assumptions are closely monitored and adjusted when warranted by changing circumstances. Our liability for self-insured claims is included within accrued compensation in our consolidated balance sheets and was </div></div> <div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">$0.3&#160;million and $0.2&#160;million at January&#160;31, 2023 and 2022, respectively. </div> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Share-Based Compensation</a></td>
<td class="text"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Share-Based Compensation:</div></div> Compensation expense for time-based restricted stock units is measured at the grant date and recognized ratably over the vesting period. We determine the fair value of time-based and performance-based restricted stock units based on the closing market price of our common stock on the grant date. The recognition of compensation expense associated with performance-based restricted stock units requires judgment in assessing the probability of meeting the performance goals, as well as defined criteria for assessing achievement of the performance-related goals. For purposes of measuring compensation expense, the number of shares ultimately expected to vest is estimated at each reporting date based on management&#8217;s expectations regarding the relevant performance criteria. The performance shares begin vesting only upon the achievement of the performance criteria. The achievement of the performance goals can impact the valuation and associated expense of the restricted stock units. The assumptions used in accounting for the share-based payment awards represent management&#8217;s best estimates, but these estimates involve inherent uncertainties and the application of management judgment. As a result, if circumstances change and we use different assumptions, our stock-based compensation expense could be materially different in the future. </div></div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Share-based compensation becomes deductible for determining income taxes when the related award vests, is exercised, or is forfeited depending on the type of share-based award and subject to relevant tax law. </div> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativesPolicyTextBlock', window );">Derivative Financial Instruments</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Derivative Financial Instruments:</div></div> We occasionally use derivative instruments as part of our overall strategy to manage exposure to market risks primarily associated with fluctuations in foreign currency exchange rates and interest rates. Derivative instruments are recognized as either assets or liabilities in the balance sheet at fair value. The accounting for changes in the fair value (i.e., gains or losses) of a derivative instrument depends on whether it has been designated and qualifies as part of a hedging relationship and, further, on the type of hedging relationship. For derivative instruments not designated as hedging instruments, the gain or loss is recognized in the statement of income during the current period. For those derivative instruments that are designated and qualify as hedging instruments, a company must designate the hedging instrument, based upon the exposure being hedged, as a fair value hedge, cash flow hedge, or a hedge of a net investment in a foreign operation. </div> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">For derivative instruments that are designated and qualify as a cash flow hedge, the gain or loss on the derivative instrument is reported as a component of other comprehensive income/(loss) and reclassified into earnings in the same line item associated with the forecasted transaction, and in the same period or periods during which the hedged transaction affects earnings (e.g., in &#8220;Interest Expense&#8221; when the hedged transactions are interest cash flows associated with floating-rate debt, or &#8220;Other, Net&#8221; for portions reclassified relating to the remeasurement of the debt). The remaining gain or loss on the derivative instrument in excess of the cumulative change in the present value of future cash flows of the hedged item, if any, are recognized in the statement of income during the current period. </div> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recent Accounting Pronouncements</a></td>
<td class="text"> <div style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Recent Accounting Pronouncements </div></div></div> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">There were no new accounting pronouncements, issued or effective during fiscal 2023, that have had or are expected to have a material impact on our consolidated financial statements. </div> <div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;">&#160;</div> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdvertisingCostsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for advertising cost.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=6420018&amp;loc=d3e36677-107848<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_BusinessCombinationsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -Subparagraph (a)-(d)<br> -URI https://asc.fasb.org/extlink&amp;oid=6909625&amp;loc=d3e227-128457<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationsPolicy</td>
</tr>
<tr>
<td style="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for 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="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 https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4273-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ConsolidationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy 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="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 https://asc.fasb.org/extlink&amp;oid=126899994&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 https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=d3e5614-111684<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DerivativesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for its derivative instruments and hedging activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=d3e41620-113959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=d3e41638-113959<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5579245-113959<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=d3e41675-113959<br><br>Reference 5: 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(n))<br> -URI https://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 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5579240-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativesPolicyTextBlock</td>
</tr>
<tr>
<td style="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for 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="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 https://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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FairValueOfFinancialInstrumentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for determining the fair value of financial instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 60<br> -Paragraph 1<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13279-108611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -URI https://asc.fasb.org/topic&amp;trid=2175825<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for 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="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 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -URI https://asc.fasb.org/subtopic&amp;trid=2144439<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for intangible assets. This accounting policy may address both intangible assets subject to amortization and those that are not. The following also may be disclosed: (1) a description of intangible assets (2) the estimated useful lives of those assets (3) the amortization method used (4) how the entity assesses and measures impairment of such assets (5) how future cash flows are estimated (6) how the fair values of such asset are determined.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy</td>
</tr>
<tr>
<td style="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for 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="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 https://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 https://asc.fasb.org/extlink&amp;oid=27011434&amp;loc=d3e125687-122742<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for 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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of 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="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 https://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4556-108314<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI https://asc.fasb.org/topic&amp;trid=2126998<br><br>Reference 3: 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(6)(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=6471895&amp;loc=d3e55923-109411<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4492-108314<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=126900757&amp;loc=d3e543-108305<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 https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LessorLeasesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for leasing arrangements entered into by lessor.</p></div>
<a href="javascript:void(0);" onclick="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 30<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124258985&amp;loc=SL117410129-209981<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124258985&amp;loc=SL77919352-209981<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124258985&amp;loc=SL117410129-209981<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 14<br> -URI https://asc.fasb.org/extlink&amp;oid=124258985&amp;loc=SL119206284-209981<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorLeasesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PriorPeriodReclassificationAdjustmentDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for 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="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 https://asc.fasb.org/extlink&amp;oid=124429488&amp;loc=d3e326-107755<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99779-112916<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99893-112916<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for receivable. Includes, but is not limited to, accounts receivable and financing receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10133-111534<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for 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="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 https://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&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 https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SelfInsuranceReservePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for self-insurance reserves, including, but not limited to incurred but not reported reserves (IBNR).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SelfInsuranceReservePolicyTextBlock</td>
</tr>
<tr>
<td style="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for 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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<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 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI https://asc.fasb.org/topic&amp;trid=2228938<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<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.D.2.Q6)<br> -URI https://asc.fasb.org/extlink&amp;oid=122041274&amp;loc=d3e301413-122809<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for 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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>46
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229828425888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationsAbstract', window );"><strong>Business Combinations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock', window );">Summary of Purchase Price of Acquisition Allocated on Basis of Fair Value</a></td>
<td class="text"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table sets forth the final purchase price allocation of the Astro Machine acquisition for the estimated fair value of the net asset acquired and liabilities assumed as of the date of acquisition: </div></div></div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:85%"/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/> </tr>
<tr>
<td style="vertical-align: bottom; line-height: 8pt; font-size: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="text-indent: 0px; line-height: 8pt; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">(In thousands)</div><br/></div></td>
<td style="vertical-align: bottom; line-height: 8pt; font-size: 8pt;"> <div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"> <div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"> <div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"> <div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;">Cash</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">91</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accounts Receivable</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,393</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Inventory</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,715</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Property, Plant and Equipment</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,200</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Identifiable Intangible Assets</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Goodwill</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,730</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accounts Payable and Other Current Liabilities</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,484</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Purchase Price</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; border-bottom: 2.5pt double black;">$</td>
<td style="white-space: nowrap; vertical-align: bottom; border-bottom: 2.5pt double black;;text-align:right;">17,125</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr> </table> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock', window );">Summary of Fair Value of the Acquired Identifiable Intangible Assets and Related Estimated Useful Lives</a></td>
<td class="text"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table sets forth the fair value of the acquired identifiable intangible assets and related estimated useful lives: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px; padding-top: 0pt; padding-bottom: 0pt;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 76%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:75%"/>
<td style="vertical-align:bottom;width:9%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:9%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="font-weight:bold;display:inline;width:100%;">Fair<br/> Value</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="font-weight:bold;display:inline;width:100%;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="font-weight:bold;display:inline;width:100%;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="font-weight:bold;display:inline;width:100%;">Useful&#160;Life<br/> (<div style="letter-spacing: 0px; top: 0px;;display:inline;">y</div>ears)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Customer Relations</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,060</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Trademarks/Tradenames</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">420</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Total</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionProFormaInformationTextBlock', window );">Summary of Revenue and Earnings Before Taxes</a></td>
<td class="text"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The amounts of revenue and earnings before taxes included in our consolidated statement of income from the period August 4, 2022 (acquisition date) through January 31, 2023 are as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:85%"/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(In thousands)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Revenue</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12,515</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Earnings before Taxes</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,571</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock', window );">Summary of Acquired Identifiable Intangible Asset</a></td>
<td class="text"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The acquired identifiable intangible asset is as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: &quot;Times New Roman&quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 77%;"/>
<td style="width: 8%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 8%; vertical-align: bottom;"/>
<td/>
<td/>
<td/></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"/>(In thousands)<div style="letter-spacing: 0px; top: 0px;;display:inline;"/></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fair<br/>Value</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Useful&#160;Life<br/>(Years)</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">530</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">20</div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr></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_BusinessAcquisitionProFormaInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaInformationTextBlock</td>
</tr>
<tr>
<td style="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_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the characteristics, including initial carrying value, residual amount, weighted average useful life, of finite-lived intangible assets acquired during the period by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of finite-lived intangible assets acquired as part of a business combination or through an asset purchase, by major class and in total, including the value of the asset acquired, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock</td>
</tr>
<tr>
<td style="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>47
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827371504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Summary of Revenues Disaggregated by Primary Geographic Markets and Major Product Type</a></td>
<td class="text"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Primary geographical markets: </div></div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"><br/></div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:61%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">United States</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">91,917</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">68,185</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">70,911</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Europe</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">31,021</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">31,922</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">29,029</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Canada</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8,393</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">6,519</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,574</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Asia</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,345</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,926</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,105</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Central and South America</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,589</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,271</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,950</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Other</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,262</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,657</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,464</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">Total Revenue</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">142,527</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">117,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">116,033</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table><div style="clear:both;max-height:0pt;"/><div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div><div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Major product types: </div></div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:61%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Hardware</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">42,445</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">31,492</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">34,111</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Supplies</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">82,072</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">73,244</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">71,772</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Service and Other</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">18,010</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12,744</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">10,150</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Revenue</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">142,527</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">117,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">116,033</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></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_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823048496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Fair Value of Acquired Identifiable Intangible Assets and Related Estimated Useful Lives</a></td>
<td class="text"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible assets are as follows: </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 9pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 38%;"/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="14" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31, 2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="14" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31, 2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">(In thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Gross<br/>Carrying<br/>Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated<br/>Amortization</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Currency<br/>Translation<br/>Adjustment</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/>Carrying<br/>Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Gross<br/>Carrying<br/>Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated<br/>Amortization</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Currency<br/>Translation<br/>Adjustment</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/>Carrying<br/>Amount</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 9pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Miltope:</div></div></div></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td>
<td style="vertical-align: bottom;"><div style="display:inline;"/></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer&#160;Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">3,100</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(2,777</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">323</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">3,100</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(2,515</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">585</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">RITEC:</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">2,830</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(1,623</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">1,207</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">2,830</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(1,557</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">1,273</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">TrojanLabel:</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Existing&#160;Technology</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">2,327</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(2,087</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">94</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">334</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">2,327</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(1,767</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">127</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">687</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Distributor&#160;Relations</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">937</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(588</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">27</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">376</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">937</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(498</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">46</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">485</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Honeywell:</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">27,773</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(11,913</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">15,860</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">27,243</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(11,073</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">16,170</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Astro Machine:</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer Contract Relationships</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">3,060</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(306</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">2,754</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">420</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(42</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">378</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"><div style="font-size:9pt;;display:inline;">&#8212;&#160;&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 38%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"><div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible Assets, net</div></div></div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">40,447</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(19,336</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">121</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">21,232</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">36,437</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">(17,410</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">)&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">173</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">$</div></td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;">19,200</td>
<td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"><div style="font-size:9pt;;display:inline;">&#160;</div></td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 38%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Summary of Estimated Amortization Expense</a></td>
<td class="text"><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Estimated amortization expense for the next <div style="display:inline;">five</div> fiscal years is as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:64%"/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2024</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2025</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2026</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2027</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2028</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Estimated amortization expense</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,378</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,719</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,718</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,7192</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,281</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></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_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of 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="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 https://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the 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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229829081680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Components of Inventories</a></td>
<td class="text"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The components of invento<div style="display:inline;">ries</div> are as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:74%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Materials and Supplies</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">38,387</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">22,709</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Work-in-Progress</div></div></div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,146</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,489</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Finished Goods</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">23,221</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">19,718</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">62,754</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">43,916</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Inventory Reserve</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(11,430</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(9,307</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">51,324</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">34,609</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></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_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827362160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, Plant and Equipment (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Summary of Property, Plant and Equipment</a></td>
<td class="text"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Property, plant and equipment consist of the following: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:72%"/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Land and Land Improvements</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,304</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,004</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Buildings and Leasehold Improvements</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,158</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12,666</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Machinery and Equipment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">24,960</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">23,238</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Computer Equipment and Software</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13,972</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13,913</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Gross Property, Plant and Equipment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">55,394</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">50,821</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accumulated Depreciation</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(41,106</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(39,380</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Property Plant and Equipment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,288</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11,441</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></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_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827257904">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock', window );">Summary of Accrued Expenses</a></td>
<td class="text"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued expenses consist of the following: </div></div></div> <div style="letter-spacing: 0px; top: 0px; background: none;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px; background: none; text-decoration: none;;display:inline;"> </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><br/></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 78%;"/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="font-size: 0px;">
<td style="width:78%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Warranty</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,072</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">834</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Professional Fees</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">311</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">411</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Freight</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">347</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><span style="-sec-ix-hidden:hidden75771655">Lease</span> <span style="-sec-ix-hidden:hidden75771656">Liability</span></div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">275</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">327</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accrued Property&#160;&amp; Sales Tax</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">187</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">316</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Stockholder Relation Fees</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">86</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">102</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Dealer Commissions</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">78</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">139</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Accrued Expenses</div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,299</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,637</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 78%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,308</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,113</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 78%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accrued liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229819494176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Agreement and Long-Term Debt (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDebtTableTextBlock', window );">Schedule of Long Term Debt in the Accompanying Condensed Consolidated Balance Sheets</a></td>
<td class="text"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Long-term debt in the accompanying condensed consolidated balance sheets under the Amended Credit Agreement is as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:74%"/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">USD Term Loan (6.78% as of January&#160;31, 2023); maturity date of August 4, 2027</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">USD Term Loan (2.35% as of January&#160;31, 2022); maturity date of September&#160;30, 2025</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Debt Issuance Costs, net of accumulated amortization</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(110</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(96</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Current Portion of Term Loan</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,100</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,000</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Long-Term Debt</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12,040</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8,154</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock', window );">Schedule of Required Principal Payments Remaining on Long Term Debt Outstanding</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The schedule of required principal payments remaining on our long-term debt outstanding as of January&#160;31, 2023 is as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:68%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:85%"/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2024</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,100</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2025</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,700</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2026</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,700</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2027</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,700</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Fiscal 2028</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,050</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of maturity and sinking fund requirement for long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827300848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Financial Instruments and Risk Management (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock', window );">Schedule of Impact of the Derivative Instruments in the Condensed Consolidated Financial Statements</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The following tables present the impact of the derivative instruments in our consolidated financial statements for the years ended January&#160;31, 2023 and 2022: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:41%"/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="18" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Years Ended</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td rowspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="font-weight:bold;display:inline;">Cash Flow Hedge</div></div><div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">(In thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amount of Gain(Loss)<br/> Recognized in OCI<br/> on<br/> Derivative</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" rowspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Location&#160;of&#160;Gain&#160;(Loss)<br/> Reclassified&#160;from<br/> Accumulated&#160;OCI&#160;into<br/> Income</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amount of Gain (Loss)<br/> Reclassified from<br/> Accumulated&#160;OCI&#160;into<br/> Income</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Swap&#160;contracts</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">Other Income</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(59</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(79</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></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_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments.</p></div>
<a href="javascript:void(0);" onclick="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 10<br> -Section 50<br> -Paragraph 4E<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624181-113959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5618551-113959<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624171-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock</td>
</tr>
<tr>
<td style="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>54
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229820003424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock', window );">Schedule Of Balance Sheet And Other Information Related To Operating Leases</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Balance sheet and other information related to our leases is as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:43%"/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="font-weight:bold;display:inline;">Operating Leases</div></div><div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">(In thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Balance&#160;Sheet&#160;Classification</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,<br/> 2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Lease Assets</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap;text-align:center;">Right&#160;of&#160;Use&#160;Assets</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">794</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,094</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Lease Liabilities&#8212;Current</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap;text-align:center;">Other&#160;Accrued&#160;Expenses</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">275</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">327</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Lease Liabilities&#8212;Long Term</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap;text-align:center;">Lease Liabilities</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">555</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">808</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseCostTableTextBlock', window );">Schedule Lease Cost Information</a></td>
<td class="text"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Lease cost information is as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: &quot;Times New Roman&quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 41%;"/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; white-space: nowrap; border-bottom: 1pt solid rgb(0, 0, 0);"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating Leases</div></div></div></div><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"/>(In thousands)<div style="letter-spacing: 0px; top: 0px;;display:inline;"/></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Statement&#160;of&#160;Income&#160;Classification</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="display:inline;">&#160;</div></td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Operating Lease Costs</div></td>
<td style="vertical-align: bottom;;width:4%;">&#160;&#160;</td>
<td style="vertical-align:bottom;white-space:nowrap;text-align:center;"><div style="line-height: normal; margin-bottom: 0px; margin-top: 0px;">&#160;</div></td>
<td style="vertical-align: bottom; white-space: nowrap; text-align: right;">General&#160;and&#160;Administrative&#160;Expense</td>
<td style="vertical-align:bottom"><div style="line-height: normal; margin-bottom: 0px; margin-top: 0px;">&#160;</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space: nowrap; vertical-align: bottom;;text-align:right;;width:4%;">460</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space: nowrap; vertical-align: bottom;;text-align:right;;width:4%;">510</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Schedule of Maturities Of Lease Liabilities</a></td>
<td class="text"> <div style="text-indent: 4%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">At January&#160;31, 2023, maturities of operating lease liabilities <div style="display:inline;">are </div>as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width:89%"/>
<td style="vertical-align:bottom;width:7%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom;white-space:nowrap"><div style="margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; font-size: 8pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">(In thousands)</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2024</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">302</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2025</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">199</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2026</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">154</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2027</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">149</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">2028</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">92</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Thereafter</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Lease Payments</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">896</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Less: Imputed Interest</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(66</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Lease Liabilities</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">830</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock', window );">Supplemental Cash Flow Information Related To Leases</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Supplemental cash flow information related to leases is as follows: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 8pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 78%;"/>
<td style="vertical-align: bottom; width: 7%;"/>
<td/>
<td/>
<td/>
<td style="vertical-align: bottom; width: 7%;"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(In thousands)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 78%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Cash paid for operating lease liabilities</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">314</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">372</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of balance sheet and other information related to operating leases.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_LeaseCostTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCostTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of supplemental cash flow information for the periods presented.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock</td>
</tr>
<tr>
<td style="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>55
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827252384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accumulated Other Comprehensive Loss (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock', window );">Changes in Balance of Accumulated Other Comprehensive Loss</a></td>
<td class="text"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The changes in the balance of accumulated other comprehensive loss by component are as follows: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 92%; border: 0px; margin: 0px auto; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 60%;"/>
<td style="vertical-align: bottom; width: 8%;"/>
<td/>
<td/>
<td/>
<td style="vertical-align: bottom; width: 8%;"/>
<td/>
<td/>
<td/>
<td style="vertical-align: bottom; width: 8%;"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Foreign&#160;Currency<br/> Translation<br/> Adjustments</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/> Unrealized<br/> Gain&#160;(Losses)<br/> on&#160;Cash&#160;Flow<br/> Hedges</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance at January&#160;31, 2020</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(985</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(108</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,093</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss) before reclassification</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">710</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(239</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">471</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Amounts Reclassified from AOCI to Earnings</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">193</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">193</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Cross-Currency Interest Rate Swap Termination</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">45</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">45</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss)</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">710</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">709</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance at January&#160;31, 2021</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(275</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(109</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(384</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Loss before reclassification</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,426</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,426</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Amounts Reclassified from AOCI to Earnings</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">62</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">62</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss)</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,426</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">62</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,364</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance at January&#160;31, 2022</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,701</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(47</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,748</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss) before reclassification</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(537</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(537</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Amounts reclassified from AOCI to Earnings</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">47</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">47</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Comprehensive Income (Loss)</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(537</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">47</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(490</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 60%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance at January&#160;31, 2023</div></td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,238</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,238</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 60%;">&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 8%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></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_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accumulated other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<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 45<br> -Paragraph 14A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock</td>
</tr>
<tr>
<td style="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>56
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229828419648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Disclosure of Compensation Related Costs, Share-based Payments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock', window );">Share-Based Compensation Expense</a></td>
<td class="text"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Share-based compensation expense has been recognized as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:70%"/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="10" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Years&#160;Ended&#160;January&#160;31</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Stock Options</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">210</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">517</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Restricted Stock Awards and Restricted Stock Units</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,271</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,266</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,285</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Employee Stock Purchase Plan</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">17</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">17</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,290</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,493</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,819</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Aggregated Information Regarding Stock Options Granted</a></td>
<td class="text"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Aggregated information regarding stock options granted under the plans is summarized below: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width: 72%;"/>
<td style="vertical-align: bottom; width: 6%;"/>
<td/>
<td/>
<td/>
<td style="vertical-align: bottom; width: 6%;"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number<br/> of&#160;Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/> Average<br/> Exercise<br/> Price Per<br/> Share</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Outstanding, January&#160;31, 2020</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">679,044</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14.46</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Granted</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Exercised</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,200</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7.60</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Forfeited</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(54,361</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12.89</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Cancelled</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,400</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7.36</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 72%;">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Outstanding, January&#160;31, 2021</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">622,083</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14.63</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Granted</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Exercised</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(6,425</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9.34</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Forfeited</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(17,615</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">15.09</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Cancelled</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 72%;">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Outstanding, January&#160;31, 2022</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">598,043</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14.67</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Granted</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Exercised</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(42,944</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8.74</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Forfeited</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(5,500</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">15.42</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Cancelled</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,400</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8.09</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 72%;">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 72%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Options Outstanding, January&#160;31, 2023</div></td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">547,199</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">15.16</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 72%;">&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 6%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock', window );">Summary of Options Outstanding</a></td>
<td class="text"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Set forth below is a summary of options outstanding at January&#160;31, 2023: </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 34%;"/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td colspan="12" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid; white-space: nowrap;;text-align:center;"><div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Outstanding</div></div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Exercisable</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid; white-space: nowrap;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Range of</div></div></div></div><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Exercise prices</div></div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number&#160;of<br/>Shares</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/>Average<br/>Exercise&#160;Price</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/>Average<br/>Remaining<br/>Contractual&#160;Life</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number&#160;of<br/>Shares</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/>Average<br/>Exercise&#160;Price</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted<br/>Average<br/>Remaining<br/>Contractual<br/>Life</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-size: 0px;">
<td style="width:34%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 34%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">$5.00-10.00</div></div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 34%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">$10.01-15.00</div></div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">332,849</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13.68</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2.9</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">332,849</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13.68</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2.9</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 34%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">$15.01-20.00</div></div></td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">214,350</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">17.45</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4.8</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">214,350</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">17.45</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4.8</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 34%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 34%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">547,199</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">15.16</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3.7</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">547,199</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">15.16</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3.7</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 34%;">&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 5%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock', window );">Aggregated Information Regarding RSUs and RSAs Granted</a></td>
<td class="text"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Aggregated information regarding RSUs, PSUs and RSAs granted under the Plan is summarized below: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:55%"/>
<td style="vertical-align:bottom;width:14%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:14%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">RSUs,&#160;PSUs&#160;&amp;<br/> RSAs</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-Average<br/> Grant&#160;Date&#160;Fair&#160;Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Outstanding at January&#160;31, 2020</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">134,634</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">16.79</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Granted</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">245,131</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7.61</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Vested</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(64,997</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">17.28</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Forfeited</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(117,355</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8.83</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Outstanding at January&#160;31, 2021</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">197,413</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9.96</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Granted</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">151,406</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14.51</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Vested</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(126,939</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">10.43</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Forfeited</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(900</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14.26</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Outstanding at January&#160;31, 2022</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">220,980</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13.23</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Granted</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">141,371</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12.70</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Vested</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(85,324</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13.45</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Forfeited</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,100</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13.25</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Outstanding at January&#160;31, 2023</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">274,927</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12.82</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of cost recognized for award under share-based payment arrangement by plan. Includes, but is not limited to, related tax benefit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of option exercise prices, by grouped ranges, including the upper and lower limits of the price range, the number of shares under option, weighted average exercise price and remaining contractual option terms.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock</td>
</tr>
<tr>
<td style="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>57
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229822602304">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock', window );">Components of Income before Income Taxes</a></td>
<td class="text"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The components of income (loss) before income taxes are as follows: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:69%"/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Domestic</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,773</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,046</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,193</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,637</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,988</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,372</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,410</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7,034</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,179</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Components of Provision for Income Taxes</a></td>
<td class="text"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/></div><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The components of the provision for income taxes are as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 70%;"/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">(In thousands)</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;</div></td>
<td colspan="2" style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td></tr>
<tr style="font-size: 0px;">
<td style="width:70%"/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Current:</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Federal</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">902</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(183</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,272</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">State</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">313</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">76</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">224</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">870</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">501</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">420</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,085</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">394</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,916</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred:</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Federal</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,053</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">180</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(910</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">State</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(315</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">177</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(189</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">32</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(146</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">78</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,336</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">211</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,021</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">749</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">605</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">895</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Reconciliation of income tax provision/(benefit) With The Amount Computed By Applying The Statutory Federal Income Tax Rate To The Income Before Income Tax Provision/(benefit)</a></td>
<td class="text"><div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Total income tax provision differs from the expected tax provision as a result of the following: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:71%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Income Tax Provision at Statutory Rate</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">716</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,477</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">458</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Change in Valuation Allowance</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">182</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">57</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(81</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign Rate Differential</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">157</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">61</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">197</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Change in Reserves Related to ASC 740 Liability</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">93</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(245</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(10</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Denmark Statutory Audit</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">341</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Meals and Entertainment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Canada Withholding Taxes</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">62</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Global Intangible Low Taxed Income</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign Derived Intangible Income</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(180</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(55</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(150</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">R&amp;D Credits</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(160</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(180</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(157</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Share Based Compensation</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(52</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(95</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">171</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Return to Provision Adjustment</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(22</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">368</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">State Taxes, Net of Federal Tax Effect</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">143</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">28</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">PPP Loan Forgiveness</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(937</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">17</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">749</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">605</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">895</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities</a></td>
<td class="text">The tax effects of temporary differences that gave rise to significant portions of the deferred tax assets and liabilities are as follows: <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width: 74%;"/>
<td style="vertical-align: bottom; width: 7%;"/>
<td/>
<td/>
<td/>
<td style="vertical-align: bottom; width: 7%;"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">(In thousands)</div><br/></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Tax Assets:</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Inventory</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,710</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,159</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Honeywell Royalty Liability</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,008</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,655</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">State R&amp;D Credits</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,851</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,925</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Share-Based Compensation</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">620</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">593</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Bad Debt</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">180</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">213</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Warranty Reserve</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">258</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">198</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Compensation Accrual</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">248</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">322</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Operating Loss</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">135</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">152</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">ASU 842 Adjustment &#8211; Lease Liability</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">53</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">93</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Unrecognized State Tax Benefits</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">58</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">64</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Foreign Tax Credit</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">154</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">154</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Service Contract Revenue</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">90</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">61</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Section&#160;174 Capitalization*</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,175</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">281</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">224</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 74%;">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; text-align: right;">10,821</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; text-align: right;">8,813</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Tax Liabilities:</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Accumulated Tax Depreciation in Excess of Book Depreciation</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,037</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">455</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Intangibles</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">694</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">767</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">ASU 842 Adjustment &#8211; Lease Liability</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">50</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">90</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other</div></td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">180</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">318</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 74%;">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; text-align: right;">1,961</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; text-align: right;">1,630</td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 74%;">&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 7%;">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Subtotal</div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">8,860</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">7,183</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td></tr>
<tr style="break-inside: avoid; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
<td style="vertical-align: top; background-color: rgba(255, 255, 255, 0); width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Valuation Allowance</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">(2,120</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">)&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">(1,778</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 74%;">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="background-color: rgb(204, 238, 255);">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 74%;"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Deferred Tax Assets</div></td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">6,740</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;">&#160;&#160;</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">$</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">5,405</td>
<td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 74%;">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="background-color: rgba(255, 255, 255, 0);">&#160;</td></tr></table><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:2%;vertical-align:top;text-align:left;">*</td>
<td style="vertical-align:top;text-align:left;"><div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: left; line-height: normal;">Beginning in fiscal 2023, changes to Section&#160;174 of the Internal Revenue Code made by the Tax Cuts and Jobs Act of 2017 no longer permit an immediate deduction for research and development expenditures in the tax year that such costs are incurred. These costs are capitalized resulting in an increase in deferred tax assets of $1.2&#160;million. </div></td></tr></table><div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred taxes are reflected in the consolidated balance sheet as follows: </div></div></div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:78%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Tax Assets</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">6,907</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,591</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Deferred Tax Liabilities</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(167</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(186</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total Net Deferred Tax Assets</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">6,740</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,405</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td style="vertical-align:bottom"><div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div></td>
<td>&#160;</td></tr></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock', window );">Changes in Balance of Unrecognized Tax Benefits, Excluding Interest and Penalties</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:76%"/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:4%"/>
<td/>
<td/>
<td/> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">(In thousands)</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="2" style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance, beginning of the year</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">303</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">384</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">362</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Increases in prior period tax positions</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">24</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">63</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">59</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Increases in current period tax positions</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">136</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">67</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Reductions related to lapse of statutes of limitations</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(49</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(211</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(42</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance, end of the year</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">414</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">303</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">384</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of income before income tax between domestic and foreign jurisdictions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the change in unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 55<br> -Paragraph 217<br> -URI https://asc.fasb.org/extlink&amp;oid=126976462&amp;loc=d3e36027-109320<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 15A<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock</td>
</tr>
<tr>
<td style="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>58
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827092928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Nature of Operations, Segment Reporting and Geographical Information (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Net Sales and Segment Operating Profit (loss) for Each Reporting Segment</a></td>
<td class="text"> <div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Summarized below are the revenue and segment operating profit (loss) (both in dollars and as a percentage of revenue) for each reporting segment: </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;">
<tr style="font-size: 0px;">
<td style="width: 36%;"/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 2%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">($ in thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Revenue</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Segment&#160;Operating&#160;Profit<br/>(Loss)</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Segment&#160;Operating&#160;Profit&#160;(Loss)<br/>as&#160;a&#160;% of Revenue</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></td> </tr>
<tr style="font-size: 0px;">
<td style="width: 36%;"/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Product Identification</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">103,089</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">90,915</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">90,268</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7,889</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">10,411</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12,885</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7.7</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11.5</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14.3</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">T&amp;M</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">39,438</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">26,565</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">25,765</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8,989</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,398</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,032</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">22.8</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12.8</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(4.0</td>
<td style="white-space:nowrap;vertical-align:bottom">)%&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">142,527</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">117,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">116,033</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">16,878</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">13,809</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11,853</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11.8</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11.8</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">10.2</td>
<td style="white-space:nowrap;vertical-align:bottom">%&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Corporate Expenses</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">11,435</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,553</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,420</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Operating Income</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,443</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,256</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,433</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other Income (Expense), Net</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,033</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,778</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(254</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Income Before Income Taxes</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,410</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">7,034</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,179</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Income Tax Provision</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">749</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">605</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">895</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align: top; width: 36%;"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Net Income</div> </td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,661</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">6,429</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,284</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align: bottom; width: 36%;">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align: bottom; width: 2%;">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;</td> </tr> </table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock', window );">Summary of Other Information by Segment</a></td>
<td class="text"> <div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Other information by segment is presented below: </div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:72%"/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:5%"/>
<td/>
<td/>
<td/> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Assets</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td colspan="6" style="vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Product Identification</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">69,607</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">51,732</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">T&amp;M</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">60,730</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">50,374</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Corporate*</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8,870</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">12,849</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">139,207</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">114,955</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/> <div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%">
<tr style="page-break-inside:avoid">
<td style="width:2%;vertical-align:top;text-align:left;">*</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-align: left; line-height: normal;">Corporate assets consist principally of cash, cash equivalents, deferred tax assets and refunds, and certain prepaid corporate assets. </div> </td> </tr> </table> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:60%"/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Depreciation and<br/> Amortization</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Capital Expenditures</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Product Identification</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,219</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,157</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,835</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">121</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">847</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,563</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">T&amp;M</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,697</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,837</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,148</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">108</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">949</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,024</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,916</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,994</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,983</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">229</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,796</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,587</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock', window );">Summary of Selected Financial Information by Geographic Area</a></td>
<td class="text"> <div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Presented below is selected financial information by geogr<div style="letter-spacing: 0px; top: 0px;;display:inline;">ap</div>hic area:</div> <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:57%"/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Long-Lived&#160;Assets*</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Revenue</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; padding-bottom: 0.5pt;;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">January&#160;31,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">United States</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">91,917</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">68,185</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">70,911</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">34,277</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">29,131</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Europe</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">31,021</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">31,922</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">29,029</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,230</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,486</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Canada</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">8,393</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">6,519</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,574</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Asia</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,345</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,926</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">5,105</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">15</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Central and South America</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">4,589</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,271</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">3,950</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Other</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,262</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,657</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,464</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Total</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">142,527</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">117,480</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">116,033</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">35,520</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">30,641</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </table> <div style="clear:both;max-height:0pt;;text-indent: 0px;"/> <div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"><div style="display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div>
<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-size: 10pt; border: 0px; width: 100%;">
<tr style="page-break-inside:avoid">
<td style="width:2%;vertical-align:top;text-align:left;">*</td>
<td style="vertical-align:top;text-align:left;"> <div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; line-height: normal;">Long-lived assets exclude goodwill assigned to the T&amp;M segment of $4.5&#160;million at both January&#160;31, 2023 and 2022 and $10.1&#160;million and $7.6&#160;million assigned to the PI segment at January&#160;31, 2023 and 2022, respectively.&#160;</div> </td> </tr> </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_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of each significant reconciling item, other than profit (loss), revenues, or assets, in the reconciliation of totals of such items in reportable segments to the entity's corresponding consolidated amount.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock</td>
</tr>
<tr>
<td style="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information concerning material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material. An entity may also provide subtotals of geographic information about groups of countries.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827238528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Product Warranty Liability (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GuaranteesAndProductWarrantiesAbstract', window );"><strong>Guarantees and Product Warranties [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Activity in Product Warranty Liability</a></td>
<td class="text">Activity in the product warranty liability, which is included in other accrued expenses in the accompanying consolidated balance sheet, is as follows: <div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:68%"/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:6%"/>
<td/>
<td/>
<td/> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; text-indent: 0px;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">(</div>In thousands)</div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2021</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance, beginning of the year</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">834</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">730</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">850</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Provision for Warranty Expense</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,077</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">2,174</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">855</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Cost of Warranty Repairs</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(1,839</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(2,070</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">(975</td>
<td style="white-space:nowrap;vertical-align:bottom">)&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<td style="vertical-align:top"> <div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Balance, end of the year</div> </td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">1,072</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">834</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">730</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td> </tr>
<tr style="font-size:1px">
<td style="vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td style="vertical-align:bottom"> <div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;">&#160;</div> </td>
<td>&#160;</td> </tr> </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_GuaranteesAndProductWarrantiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GuaranteesAndProductWarrantiesAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfProductWarrantyLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="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>60
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827287680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock', window );">Summary of Changes in Fair value of Level 3 Financial Liability</a></td>
<td class="text"><div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Our long-term debt, including the current portion of long-term debt not reflected in the financial statements at fair value, is reflected in the table below: </div><div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div>
<table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto">
<tr style="font-size: 0px;">
<td style="width:66%"/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/>
<td style="vertical-align:bottom;width:2%"/>
<td/>
<td/>
<td/></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fair&#160;Value Measurement at<br/> January&#160;31, 2023</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;1</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;2</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;3</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Long-Term Debt and Related Current Maturities</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,310</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,310</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">14,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr>
<tr style="font-size:1pt">
<td style="height:12pt">&#160;</td>
<td colspan="16" style="height:12pt">&#160;</td>
<td colspan="4" style="height:12pt">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fair&#160;Value Measurement at<br/> January&#160;31, 2022</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">(In thousands)</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;1</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;2</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Level&#160;3</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td></tr>
<tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff">
<td style="vertical-align:top"><div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &quot;Times New Roman&quot;; line-height: normal;">Long-Term Debt and Related Current Maturities</div></td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">&#8212;&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,255</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,255</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td>
<td style="vertical-align:bottom">&#160;&#160;</td>
<td style="white-space:nowrap;vertical-align:bottom">$</td>
<td style="white-space:nowrap;vertical-align:bottom;text-align:right;">9,250</td>
<td style="white-space:nowrap;vertical-align:bottom">&#160;</td></tr></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_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-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_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the fair value measurement of liabilities using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets), and gains or losses recognized in other comprehensive income (loss) and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs) by class of liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19279-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock</td>
</tr>
<tr>
<td style="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>61
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818418208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies - Additional Information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 15, 2021</div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 31, 2021</div></th>
<th class="th"><div>May 06, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_CashEquivalentsMaturityPeriodDescription', window );">Highly liquid investments with an original maturity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">90<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_CashHeldInForeignBankAccounts', window );">Cash of held in foreign bank accounts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,200<span></span>
</td>
<td class="nump">$ 3,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Net transactional foreign exchange gain (loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(474)<span></span>
</td>
<td class="num">(288)<span></span>
</td>
<td class="nump">$ 590<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdvertisingExpense', window );">Advertising expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,600<span></span>
</td>
<td class="nump">1,300<span></span>
</td>
<td class="nump">900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse', window );">Impairment of Long lived assets held for use</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">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="Show.showAR( this, 'defref_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill', window );">Impairment charges for intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Number of common equivalent shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">685,667<span></span>
</td>
<td class="nump">345,085<span></span>
</td>
<td class="nump">642,623<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense', window );">Liability for self-insured claims</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 300<span></span>
</td>
<td class="nump">$ 200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Gain on Extinguishment of Debt &#8211; PPP Loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">4,466<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TradingActivityByTypeAxis=us-gaap_ForeignExchangeMember', window );">Foreign Exchange [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Net transactional foreign exchange gain (loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">300<span></span>
</td>
<td class="nump">$ 500<span></span>
</td>
<td class="nump">$ 600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=alot_PaycheckProtectionProgramLoanMember', window );">Paycheck Protection Program Loan [Member] | Greenwood Credit Union [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,400<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Gain on Extinguishment of Debt &#8211; PPP Loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentDecreaseForgiveness', window );">Amount of PPP loan forgiven</a></td>
<td class="nump">$ 4,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=alot_PromissoryNoteMember', window );">Promissory Note [Member] | Paycheck Protection Program Loan [Member] | Greenwood Credit Union [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromLoans', window );">Debt related commitment fees and debt issuance costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member] | Customer Concentration Risk [Member] | Sales Revenue, Net [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_PercentageOfServiceRevenueToTotalRevenue', window );">Percentage of revenue satisfied for services</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.00%<span></span>
</td>
<td class="nump">4.40%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member] | Airborne Product [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_ProductsWarrantyPeriod', window );">Products warranty period</a></td>
<td class="text">&#160;<span></span>
</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="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member] | Airborne Product [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_ProductsWarrantyPeriod', window );">Products warranty period</a></td>
<td class="text">&#160;<span></span>
</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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandImprovementsMember', window );">Land Improvements [Member] | 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of the assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">20 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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandImprovementsMember', window );">Land Improvements [Member] | 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of the assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=alot_BuildingAndLeaseholdImprovementsMember', window );">Building And Leasehold Improvements [Member] | 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of the assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">45 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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=alot_BuildingAndLeaseholdImprovementsMember', window );">Building And Leasehold Improvements [Member] | 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of the assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of the assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of the assets</a></td>
<td class="text">&#160;<span></span>
</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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=alot_ComputerEquipmentAndSoftwareMember', window );">Computer Equipment And Software [Member] | 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of the assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=alot_ComputerEquipmentAndSoftwareMember', window );">Computer Equipment And Software [Member] | 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of the assets</a></td>
<td class="text">&#160;<span></span>
</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>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_CashEquivalentsMaturityPeriodDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash equivalents maturity period description.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_CashEquivalentsMaturityPeriodDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_CashHeldInForeignBankAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash held in foreign bank accounts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_CashHeldInForeignBankAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_PercentageOfServiceRevenueToTotalRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of service revenue to total revenue.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_PercentageOfServiceRevenueToTotalRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_ProductsWarrantyPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Products warranty period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_ProductsWarrantyPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_SummaryOfSignificantAccountingPoliciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Summary of significant accounting policies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_SummaryOfSignificantAccountingPoliciesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_AdvertisingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=6420018&amp;loc=d3e36677-107848<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="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 (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-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_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Liability as of the balance sheet date for the estimated ultimate cost of settling claims and claim adjustment expense relating to insured events that have occurred on or before the balance sheet date for those liabilities owed to another party as a result of assuming another insurer's primary obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (cc)<br> -URI https://asc.fasb.org/extlink&amp;oid=116884095&amp;loc=d3e14764-158437<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 40<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=116884095&amp;loc=d3e14764-158437<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentDecreaseForgiveness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Decrease for amounts of indebtedness forgiven by the holder of the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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(f))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentDecreaseForgiveness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28551-108399<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429444&amp;loc=SL124452920-239629<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.</p></div>
<a href="javascript:void(0);" onclick="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> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=125521441&amp;loc=d3e30690-110894<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 35<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123602790&amp;loc=d3e30226-110892<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=126980362&amp;loc=d3e28228-110885<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124440516&amp;loc=d3e30840-110895<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126972273&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126972273&amp;loc=d3e12317-112629<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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ImpairmentOfIntangibleAssetsExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of impairment loss recognized in the period resulting from the write-down of the carrying amount of an intangible asset (excluding goodwill) to fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&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 3<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16373-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ImpairmentOfLongLivedAssetsHeldForUse">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&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 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2921-110230<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=126905981&amp;loc=d3e2420-110228<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOfLongLivedAssetsHeldForUse</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromLoans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash received from principal payments made on loans related to operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3536-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromLoans</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_TradingActivityByTypeAxis=us-gaap_ForeignExchangeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TradingActivityByTypeAxis=us-gaap_ForeignExchangeMember</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_CreditFacilityAxis=alot_PaycheckProtectionProgramLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=alot_PaycheckProtectionProgramLoanMember</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_LineOfCreditFacilityAxis=alot_GreenwoodCreditUnionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityAxis=alot_GreenwoodCreditUnionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=alot_PromissoryNoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=alot_PromissoryNoteMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=alot_AirborneProductMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=alot_AirborneProductMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_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_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandImprovementsMember</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=alot_BuildingAndLeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=alot_BuildingAndLeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=alot_ComputerEquipmentAndSoftwareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=alot_ComputerEquipmentAndSoftwareMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818789120">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Acquisitions - Summary of Purchase Price of Acquisition Allocated on Basis of Fair Value (Detail)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Aug. 04, 2022 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="nump">$ 91<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts Receivable</a></td>
<td class="nump">3,393<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventory</a></td>
<td class="nump">5,715<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property, Plant and Equipment</a></td>
<td class="nump">4,200<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Identifiable Intangible Assets</a></td>
<td class="nump">3,480<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill', window );">Goodwill</a></td>
<td class="nump">2,730<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities', window );">Accounts Payable and Other Current Liabilities</a></td>
<td class="num">(2,484)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Total Purchase Price</a></td>
<td class="nump">$ 17,125<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination, recognized identifiable assets acquired and liabilities assumed, goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. 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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of intangible assets, excluding goodwill, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of inventory recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI https://asc.fasb.org/extlink&amp;oid=123455525&amp;loc=d3e2207-128464<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of property, plant, and equipment recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI https://asc.fasb.org/extlink&amp;oid=123455525&amp;loc=d3e2207-128464<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>63
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818796640">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Acquisitions - Summary of Fair Value of the Acquired Identifiable Intangible Assets and Related Estimated Useful Lives (Detail)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Aug. 04, 2022 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair Value</a></td>
<td class="nump">$ 3,480<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer Relationships [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="Show.showAR( this, 'defref_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair Value</a></td>
<td class="nump">$ 3,060<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Useful Life (Years)</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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksAndTradeNamesMember', window );">Trademarks and Trade Names [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="Show.showAR( this, 'defref_us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Fair Value</a></td>
<td class="nump">$ 420<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Useful Life (Years)</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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of 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="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 1<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife</td>
</tr>
<tr>
<td style="padding-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_AcquiredIndefiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-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_FinitelivedIntangibleAssetsAcquired1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.</p></div>
<a href="javascript:void(0);" onclick="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 1<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinitelivedIntangibleAssetsAcquired1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember</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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksAndTradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksAndTradeNamesMember</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>64
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229826462032">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions - Summary of Revenue and Earnings Before Taxes (Detail) - Agreement With Astro Machine For Asset Acquisitions [Member]<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_BusinessAcquisitionProFormaInformationLineItems', window );"><strong>Business Acquisition Pro Forma Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_BusinessAcquisitionRevenue', window );">Revenue</a></td>
<td class="nump">$ 12,515<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_BusinessAcquisitionEarningBeforeTaxes', window );">Earnings before Taxes</a></td>
<td class="nump">$ 1,571<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_BusinessAcquisitionEarningBeforeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business acquisition earning before taxes from date of acquisition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_BusinessAcquisitionEarningBeforeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_BusinessAcquisitionProFormaInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business acquisition pro forma information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_BusinessAcquisitionProFormaInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_BusinessAcquisitionRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business acquisition revenue from date of acquisition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_BusinessAcquisitionRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessAcquisitionAxis=alot_AgreementWithAstroMachineForAssetAcquisitionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=alot_AgreementWithAstroMachineForAssetAcquisitionsMember</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823059888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions - Summary of Acquired Identifiable Intangible Asset (Detail) - Customer Contract Relationships [Member]<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure', window );">Fair Value</a></td>
<td class="nump">$ 530<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Useful Life (Years)</a></td>
<td class="text">20 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_AcquiredFiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-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_FiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_FiniteLivedIntangibleAssetsFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value portion of assets, excluding financial assets, that lack physical substance, having a limited useful life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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=us-gaap_CustomerRelatedIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelatedIntangibleAssetsMember</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823113536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions - Additional Information (Detail)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Aug. 04, 2022 </div>
<div>USD ($) </div>
<div>ft&#178;</div>
</th>
<th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jan. 31, 2022 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Business Combination, Consideration Transferred</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 17,034,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AreaOfLand', window );">Area of Land | ft&#178;</a></td>
<td class="nump">34,460<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14,658,000<span></span>
</td>
<td class="nump">$ 12,156,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RoyaltyExpense', window );">Royalty expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue', window );">Royalty guarantee commitement due current and non current discounted value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueInNextTwelveMonthsMember', window );">Royalty Payments Due In Next Twelve Months [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RoyaltyGuaranteesCommitmentsAmount', window );">Royalty guarantee commitement amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueYearTwoMember', window );">Royalty Payments Due Year Two [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="Show.showAR( this, 'defref_us-gaap_RoyaltyGuaranteesCommitmentsAmount', window );">Royalty guarantee commitement amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">200,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueYearThreeMember', window );">Royalty Payments Due Year Three [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RoyaltyGuaranteesCommitmentsAmount', window );">Royalty guarantee commitement amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">233,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueYearFourMember', window );">Royalty Payments Due Year Four [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="Show.showAR( this, 'defref_us-gaap_RoyaltyGuaranteesCommitmentsAmount', window );">Royalty guarantee commitement amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">233,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueYearFiveMember', window );">Royalty Payments Due Year Five [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RoyaltyGuaranteesCommitmentsAmount', window );">Royalty guarantee commitement amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">234,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=alot_NonCurrentLiabilityMember', window );">Non Current Liability [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent', window );">Royalty guarantees commitments amount non current</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MeasurementInputTypeAxis=alot_MeasurementInputRoyaltyRateMember', window );">Measurement Input Royalty Rate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_FairValueOfIntangibleAssetsMeasurementInput', window );">Fair Value Of Intangible Assets Measurement Input</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.0075<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MeasurementInputTypeAxis=alot_MeasurementInputCustomerAttritionRateMember', window );">Measurement Input Customer Attrition Rate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_FairValueOfIntangibleAssetsMeasurementInput', window );">Fair Value Of Intangible Assets Measurement Input</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.18<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MeasurementInputTypeAxis=us-gaap_MeasurementInputDiscountRateMember', window );">Measurement Input, Discount Rate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_FairValueOfIntangibleAssetsMeasurementInput', window );">Fair Value Of Intangible Assets Measurement Input</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.19<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=alot_AgreementWithAstroMachineForAssetAcquisitionsMember', window );">Agreement With Astro Machine For Asset Acquisitions [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Purchase price of acquisition</a></td>
<td class="nump">$ 15,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Business Combination, Consideration Transferred</a></td>
<td class="nump">$ 17,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired', window );">Payments to Acquire Businesses, Gross</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_PurchasePriceIntoAnEscrowAccount', window );">Purchase price into an escrow account</a></td>
<td class="nump">$ 300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireLand', window );">Payments to Acquire Additional Interest in Subsidiaries</a></td>
<td class="nump">$ 1,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_NumberOfAcresOfLand', window );">Number of Acres of land</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1.26<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,730,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=alot_AgreementWithAstroMachineForAssetAcquisitionsMember', window );">Agreement With Astro Machine For Asset Acquisitions [Member] | General and Administrative Expense [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationAcquisitionRelatedCosts', window );">Business Combination, Acquisition Related Costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 700,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_alot_FairValueOfIntangibleAssetsMeasurementInput">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of intangible assets measurement input.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_FairValueOfIntangibleAssetsMeasurementInput</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:decimalItemType</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_alot_NumberOfAcresOfLand">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of acres of land.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_NumberOfAcresOfLand</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_PurchasePriceIntoAnEscrowAccount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Purchase price into an escrow account.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_PurchasePriceIntoAnEscrowAccount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Royalty guarantee commitement amount due current and non current discounted value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Royalty guarantees commitments amount non current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AreaOfLand">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area of land held.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AreaOfLand</td>
</tr>
<tr>
<td style="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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionPercentageOfVotingInterestsAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of voting equity interests acquired at the acquisition date in the business combination.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired</td>
</tr>
<tr>
<td style="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_BusinessCombinationAcquisitionRelatedCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 23<br> -URI https://asc.fasb.org/extlink&amp;oid=123586518&amp;loc=d3e1043-128460<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationAcquisitionRelatedCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6613-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: 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(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PaymentsToAcquireBusinessesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.</p></div>
<a href="javascript:void(0);" onclick="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 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e6927-128479<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 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PaymentsToAcquireLand">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow from the acquisition of real estate intended to generate income for the owner; excludes land acquired for use by the owner.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireLand</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RoyaltyExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense related to royalty payments under a contractual arrangement such as payment for mineral and drilling rights and use of technology or intellectual property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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.3)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RoyaltyExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RoyaltyGuaranteesCommitmentsAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount the entity has committed to make for future royalty guarantees.</p></div>
<a href="javascript:void(0);" onclick="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 440<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6473578&amp;loc=d3e63223-108013<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RoyaltyGuaranteesCommitmentsAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueInNextTwelveMonthsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueInNextTwelveMonthsMember</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_alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueYearTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueYearTwoMember</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_alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueYearThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueYearThreeMember</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_alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueYearFourMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueYearFourMember</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_alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueYearFiveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RoyaltyPaymentsDueAxis=alot_RoyaltyPaymentsDueYearFiveMember</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_BalanceSheetLocationAxis=alot_NonCurrentLiabilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=alot_NonCurrentLiabilityMember</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_MeasurementInputTypeAxis=alot_MeasurementInputRoyaltyRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MeasurementInputTypeAxis=alot_MeasurementInputRoyaltyRateMember</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_MeasurementInputTypeAxis=alot_MeasurementInputCustomerAttritionRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MeasurementInputTypeAxis=alot_MeasurementInputCustomerAttritionRateMember</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_MeasurementInputTypeAxis=us-gaap_MeasurementInputDiscountRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MeasurementInputTypeAxis=us-gaap_MeasurementInputDiscountRateMember</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_BusinessAcquisitionAxis=alot_AgreementWithAstroMachineForAssetAcquisitionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=alot_AgreementWithAstroMachineForAssetAcquisitionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823580224">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Summary of Revenues Disaggregated by Primary Geographic Markets (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">$ 142,527<span></span>
</td>
<td class="nump">$ 117,480<span></span>
</td>
<td class="nump">$ 116,033<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United States [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">91,917<span></span>
</td>
<td class="nump">68,185<span></span>
</td>
<td class="nump">70,911<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=srt_EuropeMember', window );">Europe [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">31,021<span></span>
</td>
<td class="nump">31,922<span></span>
</td>
<td class="nump">29,029<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CA', window );">Canada [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">8,393<span></span>
</td>
<td class="nump">6,519<span></span>
</td>
<td class="nump">5,574<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=srt_AsiaMember', window );">Asia [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">5,345<span></span>
</td>
<td class="nump">5,926<span></span>
</td>
<td class="nump">5,105<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=alot_CentralAndSouthAmericaMember', window );">Central and South America [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">4,589<span></span>
</td>
<td class="nump">3,271<span></span>
</td>
<td class="nump">3,950<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=alot_OthersCountriesMember', window );">Other [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">$ 1,262<span></span>
</td>
<td class="nump">$ 1,657<span></span>
</td>
<td class="nump">$ 1,464<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_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-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 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130543-203045<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 https://asc.fasb.org/extlink&amp;oid=126901519&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-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 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<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 https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_EuropeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_EuropeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_CA">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CA</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_AsiaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_AsiaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=alot_CentralAndSouthAmericaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=alot_CentralAndSouthAmericaMember</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=alot_OthersCountriesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=alot_OthersCountriesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<FILENAME>R56.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229819695408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Summary of Revenues Disaggregated by Primary Product Type (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">$ 142,527<span></span>
</td>
<td class="nump">$ 117,480<span></span>
</td>
<td class="nump">$ 116,033<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=alot_HardwareProductsMember', window );">Hardware [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">42,445<span></span>
</td>
<td class="nump">31,492<span></span>
</td>
<td class="nump">34,111<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=alot_SuppliesMember', window );">Supplies [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">82,072<span></span>
</td>
<td class="nump">73,244<span></span>
</td>
<td class="nump">71,772<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=alot_ServiceAndOtherMember', window );">Service and Other [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">$ 18,010<span></span>
</td>
<td class="nump">$ 12,744<span></span>
</td>
<td class="nump">$ 10,150<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_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-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 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130543-203045<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 https://asc.fasb.org/extlink&amp;oid=126901519&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-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 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<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 https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=alot_HardwareProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=alot_HardwareProductsMember</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=alot_SuppliesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=alot_SuppliesMember</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=alot_ServiceAndOtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=alot_ServiceAndOtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>69
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818759296">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Additional Information (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jul. 31, 2021</div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Contract liabilities and extended warranties</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 412,000<span></span>
</td>
<td class="nump">$ 262,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="Show.showAR( this, 'defref_alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions', window );">Revenue recognized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">248,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNet', window );">Contract assets balance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,300,000<span></span>
</td>
<td class="nump">1,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostNet', window );">Additional contract costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostAmortization', window );">Amortization of incremental direct costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">75,000<span></span>
</td>
<td class="nump">$ 60,000<span></span>
</td>
<td class="nump">$ 27,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostNetCurrent', window );">Deferred incremental direct contract costs reported in other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining', window );">Capitalized contract costs additional amounts incurred amortization period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">19 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_CapitalizedContractCostNetLongTermAndShortTerm', window );">Capitalized contract cost net long term and short term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod', window );">Capitalized contract costs additional amounts incurred amortization period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">6 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="Show.showAR( this, 'defref_srt_MajorCustomersAxis=alot_AerospaceCustomerMember', window );">Aerospace Customer [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SettlementOfContractClaim', window );">Contract with customer liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,250,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_SettlementofContractClaimRevenueRecognized', window );">Revenue recognized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ChangeInAccountingEstimateByTypeAxis=us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember', window );">Change in Accounting Method Accounted for as Change in Estimate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod', window );">Capitalized contract costs additional amounts incurred amortization period</a></td>
<td class="text">20 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>
<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_alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amortization period remaining for additional capitalized contract costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_CapitalizedContractCostNetLongTermAndShortTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Capitalized contract cost net long term and short term.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_CapitalizedContractCostNetLongTermAndShortTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Capitalized contract costs additional amounts incurred amortization period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contract with customer liability revenue recognized including additions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_SettlementOfContractClaim">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Settlement of contract claim and settlement of contract claim as a result of increased component costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_SettlementOfContractClaim</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_SettlementofContractClaimRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Settlement of contract claim revenue recognized and definition Amount of revenue recognized as result of settlement of a contract claim related to additional component costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_SettlementofContractClaimRevenueRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CapitalizedContractCostAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for asset recognized from cost incurred to obtain or fulfill contract with customer.</p></div>
<a href="javascript:void(0);" onclick="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 340<br> -SubTopic 40<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126905575&amp;loc=SL49131252-203054<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CapitalizedContractCostNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer.</p></div>
<a href="javascript:void(0);" onclick="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 340<br> -SubTopic 40<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126905575&amp;loc=SL49131252-203054<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CapitalizedContractCostNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer; classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 340<br> -SubTopic 40<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126905575&amp;loc=SL49131252-203054<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ContractWithCustomerAssetNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130549-203045<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 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130531-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 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130533-203044<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&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 https://asc.fasb.org/extlink&amp;oid=126919976&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 https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_srt_MajorCustomersAxis=alot_AerospaceCustomerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=alot_AerospaceCustomerMember</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_ChangeInAccountingEstimateByTypeAxis=us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ChangeInAccountingEstimateByTypeAxis=us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<FILENAME>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823236832">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Intangible Assets - Fair Value of Acquired Identifiable Intangible Assets and Related Estimated Useful Lives (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">$ 40,447<span></span>
</td>
<td class="nump">$ 36,437<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(19,336)<span></span>
</td>
<td class="num">(17,410)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment', window );">Currency Translation Adjustment</a></td>
<td class="nump">121<span></span>
</td>
<td class="nump">173<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Amount</a></td>
<td class="nump">21,232<span></span>
</td>
<td class="nump">19,200<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember', window );">Customer Contract Relationships [Member] | Honeywell Asset Purchase and License Agreement [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">27,773<span></span>
</td>
<td class="nump">27,243<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(11,913)<span></span>
</td>
<td class="num">(11,073)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Amount</a></td>
<td class="nump">15,860<span></span>
</td>
<td class="nump">16,170<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember', window );">Customer Contract Relationships [Member] | Miltope [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">3,100<span></span>
</td>
<td class="nump">3,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(2,777)<span></span>
</td>
<td class="num">(2,515)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Amount</a></td>
<td class="nump">323<span></span>
</td>
<td class="nump">585<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember', window );">Customer Contract Relationships [Member] | RITEC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">2,830<span></span>
</td>
<td class="nump">2,830<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(1,623)<span></span>
</td>
<td class="num">(1,557)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Amount</a></td>
<td class="nump">1,207<span></span>
</td>
<td class="nump">1,273<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember', window );">Customer Contract Relationships [Member] | Agreement With Astro Machine For Asset Acquisitions [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">3,060<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(306)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Amount</a></td>
<td class="nump">2,754<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=alot_ExistingTechnologyMember', window );">Existing Technology [Member] | TrojanLabel ApS [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">2,327<span></span>
</td>
<td class="nump">2,327<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(2,087)<span></span>
</td>
<td class="num">(1,767)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment', window );">Currency Translation Adjustment</a></td>
<td class="nump">94<span></span>
</td>
<td class="nump">127<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Amount</a></td>
<td class="nump">334<span></span>
</td>
<td class="nump">687<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=alot_DistributorRelationsMember', window );">Distributor Relations [Member] | TrojanLabel ApS [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">937<span></span>
</td>
<td class="nump">937<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(588)<span></span>
</td>
<td class="num">(498)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment', window );">Currency Translation Adjustment</a></td>
<td class="nump">27<span></span>
</td>
<td class="nump">46<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Amount</a></td>
<td class="nump">376<span></span>
</td>
<td class="nump">$ 485<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember', window );">Trademarks [Member] | Agreement With Astro Machine For Asset Acquisitions [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">420<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(42)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Amount</a></td>
<td class="nump">$ 378<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_alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finite-lived&#8203; intangible assets foreign currency translation adjustment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 928<br> -SubTopic 340<br> -Section 50<br> -Paragraph 1<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-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_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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=us-gaap_CustomerContractsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember</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_TypeOfArrangementAxis=alot_HoneywellAssetPurchaseAndLicenseAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TypeOfArrangementAxis=alot_HoneywellAssetPurchaseAndLicenseAgreementMember</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_BusinessAcquisitionAxis=alot_MiltopeCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=alot_MiltopeCorporationMember</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_BusinessAcquisitionAxis=alot_RuggedInformationTechnologyEquipmentCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=alot_RuggedInformationTechnologyEquipmentCorporationMember</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_BusinessAcquisitionAxis=alot_AgreementWithAstroMachineForAssetAcquisitionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=alot_AgreementWithAstroMachineForAssetAcquisitionsMember</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_FiniteLivedIntangibleAssetsByMajorClassAxis=alot_ExistingTechnologyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=alot_ExistingTechnologyMember</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_BusinessAcquisitionAxis=alot_TrojanlabelApSMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=alot_TrojanlabelApSMember</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_FiniteLivedIntangibleAssetsByMajorClassAxis=alot_DistributorRelationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=alot_DistributorRelationsMember</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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember</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>71
<FILENAME>R59.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818767424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets - Additional Information (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_alot_IntangibleAssetsLineItems', window );"><strong>Intangible Assets [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="Show.showAR( this, 'defref_us-gaap_ImpairmentOfIntangibleAssetsFinitelived', window );">Impairments of intangible assets</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="Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization expense</a></td>
<td class="nump">$ 1,900,000<span></span>
</td>
<td class="nump">$ 2,200,000<span></span>
</td>
<td class="nump">$ 4,100,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember', window );">Customer Contracts [Member] | RITEC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_IntangibleAssetsLineItems', window );"><strong>Intangible Assets [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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1', window );">Finite lived intangible assets remaining useful Life</a></td>
<td class="text">4 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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember', window );">Customer Contracts [Member] | Honeywell Asset Purchase and License Agreement [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_IntangibleAssetsLineItems', window );"><strong>Intangible Assets [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1', window );">Finite lived intangible assets remaining useful Life</a></td>
<td class="text">6 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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember', window );">Customer Contracts [Member] | Intangible Assets, Amortization Period [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_IntangibleAssetsLineItems', window );"><strong>Intangible Assets [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod', window );">Decrease In amortization expense</a></td>
<td class="nump">$ 1,800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization', window );">Increase in net income due to change of amortization method</a></td>
<td class="nump">$ 1,800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember', window );">Customer Contracts [Member] | Intangible Assets, Amortization Period [Member] | RITEC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_IntangibleAssetsLineItems', window );"><strong>Intangible Assets [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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1', window );">Finite lived intangible assets remaining useful Life</a></td>
<td class="text">20 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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember', window );">Customer Contracts [Member] | Intangible Assets, Amortization Period [Member] | Honeywell Asset Purchase and License Agreement [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_IntangibleAssetsLineItems', window );"><strong>Intangible Assets [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1', window );">Finite lived intangible assets remaining useful Life</a></td>
<td class="text">20 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_alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Decrease In amortization expense</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase in net income due to change in the method of amortization.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_IntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Intangible Assets [Line Items]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_IntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense 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="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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://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 https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Remaining amortization period 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="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 https://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1</td>
</tr>
<tr>
<td style="padding-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_ImpairmentOfIntangibleAssetsFinitelived">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of impairment loss recognized in the period resulting from the write-down of the carrying amount of a finite-lived intangible asset to fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16373-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOfIntangibleAssetsFinitelived</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember</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_BusinessAcquisitionAxis=alot_RuggedInformationTechnologyEquipmentCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=alot_RuggedInformationTechnologyEquipmentCorporationMember</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_TypeOfArrangementAxis=alot_HoneywellAssetPurchaseAndLicenseAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TypeOfArrangementAxis=alot_HoneywellAssetPurchaseAndLicenseAgreementMember</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_ChangeInAccountingEstimateByTypeAxis=us-gaap_IntangibleAssetsAmortizationPeriodMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ChangeInAccountingEstimateByTypeAxis=us-gaap_IntangibleAssetsAmortizationPeriodMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229828369360">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Intangible Assets - Summary of Estimated Amortization Expense (Detail)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2024</a></td>
<td class="nump">$ 2,378<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2025</a></td>
<td class="nump">1,719<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2026</a></td>
<td class="nump">1,718<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2027</a></td>
<td class="nump">17,192<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">2028</a></td>
<td class="nump">$ 1,281<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization 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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization 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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract</td>
</tr>
<tr>
<td style="padding-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>73
<FILENAME>R61.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229822743408">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories - Additional Information (Detail) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_InventoryDemonstrationEquipment', window );">Inventory demonstration equipment</a></td>
<td class="nump">$ 2.3<span></span>
</td>
<td class="nump">$ 3.4<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_InventoryDemonstrationEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Inventory demonstration equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_InventoryDemonstrationEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229819762688">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories - Components of Inventories (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsAndSupplies', window );">Materials and Supplies</a></td>
<td class="nump">$ 38,387<span></span>
</td>
<td class="nump">$ 22,709<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcess', window );">Work-in-Progress</a></td>
<td class="nump">1,146<span></span>
</td>
<td class="nump">1,489<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoods', window );">Finished Goods</a></td>
<td class="nump">23,221<span></span>
</td>
<td class="nump">19,718<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryGross', window );">Inventory, Gross</a></td>
<td class="nump">62,754<span></span>
</td>
<td class="nump">43,916<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryValuationReserves', window );">Inventory Reserve</a></td>
<td class="num">(11,430)<span></span>
</td>
<td class="num">(9,307)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">$ 51,324<span></span>
</td>
<td class="nump">$ 34,609<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoods">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryFinishedGoods</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross amount, as of the balance sheet date, of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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(6))<br> -URI https://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 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InventoryRawMaterialsAndSupplies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross amount of unprocessed materials to be used in manufacturing or production process and supplies that will be consumed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryRawMaterialsAndSupplies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InventoryValuationReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of valuation reserve for inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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))<br> -URI https://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 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB TOPIC 5.BB)<br> -URI https://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryValuationReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InventoryWorkInProcess">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWorkInProcess</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>75
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229819762528">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Property, Plant and Equipment - Summary of Property, Plant and Equipment (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LandAndLandImprovements', window );">Land and Land Improvements</a></td>
<td class="nump">$ 2,304<span></span>
</td>
<td class="nump">$ 1,004<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BuildingsAndImprovementsGross', window );">Buildings and Leasehold Improvements</a></td>
<td class="nump">14,158<span></span>
</td>
<td class="nump">12,666<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MachineryAndEquipmentGross', window );">Machinery and Equipment</a></td>
<td class="nump">24,960<span></span>
</td>
<td class="nump">23,238<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedComputerSoftwareGross', window );">Computer Equipment and Software</a></td>
<td class="nump">13,972<span></span>
</td>
<td class="nump">13,913<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Gross Property, Plant and Equipment</a></td>
<td class="nump">55,394<span></span>
</td>
<td class="nump">50,821<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="num">(41,106)<span></span>
</td>
<td class="num">(39,380)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Net Property Plant and Equipment</a></td>
<td class="nump">$ 14,288<span></span>
</td>
<td class="nump">$ 11,441<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<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(14))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation 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="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 https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated 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="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 https://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LandAndLandImprovements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation and depletion of real estate held for productive use and additions or improvements to real estate held for productive use, examples include, but are not limited to, walkways, driveways, fences, and parking lots. Excludes land held for sale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LandAndLandImprovements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation 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="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 https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>76
<FILENAME>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229822656768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, Plant and Equipment - Additional Information (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation expense on property, plant and equipment</a></td>
<td class="nump">$ 2,000,000<span></span>
</td>
<td class="nump">$ 1,700,000<span></span>
</td>
<td class="nump">$ 1,900,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_NonoperatingIncomeExpenseMember', window );">Nonoperating Income (Expense) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedComputerSoftwareImpairments1', window );">Capitalized Computer Software, Impairments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 696,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_CapitalizedComputerSoftwareImpairments1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of impairment loss from capitalized computer software costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128487-111756<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedComputerSoftwareImpairments1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeStatementLocationAxis=us-gaap_NonoperatingIncomeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_NonoperatingIncomeExpenseMember</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229820243840">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accrued Expenses - Summary of Accrued Expenses (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 31, 2021</div></th>
<th class="th"><div>Jan. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualClassifiedCurrent', window );">Warranty</a></td>
<td class="nump">$ 1,072<span></span>
</td>
<td class="nump">$ 834<span></span>
</td>
<td class="nump">$ 730<span></span>
</td>
<td class="nump">$ 850<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedProfessionalFeesCurrent', window );">Professional Fees</a></td>
<td class="nump">311<span></span>
</td>
<td class="nump">411<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_AccruedFreight', window );">Freight</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">347<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Lease Liability</a></td>
<td class="nump">275<span></span>
</td>
<td class="nump">327<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_AccruedPayrollAndSalesTaxesCurrent', window );">Accrued Property &amp; Sales Tax</a></td>
<td class="nump">187<span></span>
</td>
<td class="nump">316<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_AccruedStockHolderRelationFees', window );">Stockholder Relation Fees</a></td>
<td class="nump">86<span></span>
</td>
<td class="nump">102<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedSalesCommissionCurrent', window );">Dealer Commissions</a></td>
<td class="nump">78<span></span>
</td>
<td class="nump">139<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Other Accrued Expenses</a></td>
<td class="nump">1,299<span></span>
</td>
<td class="nump">1,637<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Total</a></td>
<td class="nump">$ 3,308<span></span>
</td>
<td class="nump">$ 4,113<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Total<span></span>
</td>
<td class="text">Total<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_alot_AccruedFreight">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accrued freight.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_AccruedFreight</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_AccruedPayrollAndSalesTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accrued payroll and sales taxes current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_AccruedPayrollAndSalesTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_AccruedStockHolderRelationFees">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accrued stock holder relation fees.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_AccruedStockHolderRelationFees</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AccruedProfessionalFeesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for professional fees, such as for legal and accounting services received. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedProfessionalFeesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccruedSalesCommissionCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for sales commissions. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6935-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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedSalesCommissionCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of financial position that includes current operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918631-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</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_OtherAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrualClassifiedCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12524-110249<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 https://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 460<br> -SubTopic 10<br> -Section 25<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126907644&amp;loc=d3e11281-110244<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualClassifiedCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229820241280">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Credit Agreement and Long- Term Debt - Schedule of Long Term Debt in the Accompanying Condensed Consolidated Balance Sheets (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">USD Term Loan</a></td>
<td class="nump">$ 14,250<span></span>
</td>
<td class="nump">$ 9,250<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredFinanceCostsNet', window );">Debt Issuance Costs, net of accumulated amortization</a></td>
<td class="num">(110)<span></span>
</td>
<td class="num">(96)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Current Portion of Term Loan</a></td>
<td class="num">(2,100)<span></span>
</td>
<td class="num">(1,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long-Term Debt</a></td>
<td class="nump">12,040<span></span>
</td>
<td class="nump">8,154<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember', window );">Term Loan Due September 30, 2025 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">USD Term Loan</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">9,250<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember', window );">Term Loan Due August 4, 2027 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">USD Term Loan</a></td>
<td class="nump">$ 14,250<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_DebtInstrumentCarryingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 4<br> -Subparagraph (b)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6031897-161870<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(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI https://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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentCarryingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFinanceCostsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFinanceCostsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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,20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember</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_CreditFacilityAxis=alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229819553232">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Credit Agreement and Long- Term Debt- Schedule of Required Principal Payments Remaining on Long Term Debt Outstanding (Detail) - Term Loan [Member]<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths', window );">Fiscal 2024</a></td>
<td class="nump">$ 2,100<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo', window );">Fiscal 2025</a></td>
<td class="nump">2,700<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree', window );">Fiscal 2026</a></td>
<td class="nump">2,700<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour', window );">Fiscal 2027</a></td>
<td class="nump">2,700<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive', window );">Fiscal 2028</a></td>
<td class="nump">4,050<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term Debt</a></td>
<td class="nump">$ 14,250<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_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6031897-161870<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<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)(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 6: 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 1D<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: 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 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br><br>Reference 3: 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 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br><br>Reference 3: 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 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: 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 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: 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 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=alot_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=alot_TermLoanMember</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818108432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Agreement and Long- Term Debt - Additional Information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1">42 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Aug. 04, 2022</div></th>
<th class="th"><div>Jul. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 31, 2021</div></th>
<th class="th"><div>Apr. 30, 2027</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCredit', window );">Revolving loan outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest Expense, Debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 600<span></span>
</td>
<td class="nump">$ 300<span></span>
</td>
<td class="nump">$ 500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate', window );">Variable interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">0.50<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_VariableRateAxis=us-gaap_LondonInterbankOfferedRateLIBORMember', window );">LIBOR [Member] | Revolving Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_VariableRateAxis=us-gaap_FederalFundsEffectiveSwapRateMember', window );">Federal Funds Effective Swap Rate [Member] | Revolving Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member] | Revolving Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityCommitmentFeePercentage', window );">Commitment fee rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.15%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DebtInstrumentAdditionalBasisSpread', window );">Percentage added to variable rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.60%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member] | LIBOR [Member] | Revolving Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.60%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member] | Revolving Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityCommitmentFeePercentage', window );">Commitment fee rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.35%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DebtInstrumentAdditionalBasisSpread', window );">Percentage added to variable rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member] | LIBOR [Member] | Revolving Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAxis=alot_BankOfAmericaMember', window );">Bank of America, N.A. [Member] | Term Loan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPeriodicPaymentPrincipal', window );">Debt Instrument, principal Periodic payment</a></td>
<td class="text">&#160;<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>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 675,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAxis=alot_BankOfAmericaMember', window );">Bank of America, N.A. [Member] | Term Loan [Member] | Additional Term Loan Availed [Member] | Second Amendment Credit Agreement [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Principal amount of debt</a></td>
<td class="nump">$ 6,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAxis=alot_BankOfAmericaMember', window );">Bank of America, N.A. [Member] | Term Loan [Member] | Before Amendment To The Credit Agreement [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Principal amount of debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAxis=alot_BankOfAmericaMember', window );">Bank of America, N.A. [Member] | Revolving Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity', window );">Line of Credit Facility, Remaining Borrowing Capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtWeightedAverageInterestRateOverTime', window );">Long term debt weighted average interest rate over a period of time</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.71%<span></span>
</td>
<td class="nump">4.10%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAxis=alot_BankOfAmericaMember', window );">Bank of America, N.A. [Member] | Revolving Credit Facility [Member] | Second Amendment Credit Agreement [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 25,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromLongTermLinesOfCredit', window );">Proceeds from long term line of credit</a></td>
<td class="nump">$ 12,400<span></span>
</td>
<td class="text">&#160;<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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAxis=alot_BankOfAmericaMember', window );">Bank of America, N.A. [Member] | Revolving Credit Facility [Member] | Before Amendment To The Credit Agreement [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 22,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAxis=alot_BankOfAmericaMember', window );">Bank of America, N.A. [Member] | Revolving Credit Facility [Member] | Other Expense [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest Expense, Debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">752,000<span></span>
</td>
<td class="nump">4,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityCommitmentFeeAmount', window );">Line of Credit Facility, Commitment Fee Amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 30,000<span></span>
</td>
<td class="nump">$ 50,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_alot_DebtInstrumentAdditionalBasisSpread">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt instrument additional basis spread.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DebtInstrumentAdditionalBasisSpread</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_DebtInstrumentBasisSpreadOnVariableRate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage points added to the reference rate to compute the variable rate on the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentBasisSpreadOnVariableRate1</td>
</tr>
<tr>
<td style="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_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28551-108399<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429444&amp;loc=SL124452920-239629<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of any adjustments made to the stated rate to determine the effective rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28551-108399<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.22(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate</td>
</tr>
<tr>
<td style="padding-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_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentPeriodicPaymentPrincipal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the required periodic payments applied to principal.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentPeriodicPaymentPrincipal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpenseDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense for debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 6<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6036836-161870<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.8)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69F<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495745-112612<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69E<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495743-112612<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 1F<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495355-112611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpenseDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The 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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LineOfCreditFacilityCommitmentFeeAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the fee for available but unused credit capacity under the credit facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityCommitmentFeeAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LineOfCreditFacilityCommitmentFeePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The fee, expressed as a percentage of the line of credit facility, for the line of credit facility regardless of whether the facility has been used.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityCommitmentFeePercentage</td>
</tr>
<tr>
<td style="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_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LineOfCreditFacilityRemainingBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtWeightedAverageInterestRateOverTime">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average interest rate of long-term debt outstanding calculated over time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtWeightedAverageInterestRateOverTime</td>
</tr>
<tr>
<td style="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_ProceedsFromLongTermLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with maturities due beyond one year or the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromLongTermLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember</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_VariableRateAxis=us-gaap_LondonInterbankOfferedRateLIBORMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_LondonInterbankOfferedRateLIBORMember</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_VariableRateAxis=us-gaap_FederalFundsEffectiveSwapRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_FederalFundsEffectiveSwapRateMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_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_LineOfCreditFacilityAxis=alot_BankOfAmericaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityAxis=alot_BankOfAmericaMember</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_CreditFacilityAxis=alot_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=alot_TermLoanMember</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_alot_DetailsOneAxis=alot_AdditionalTermLoanAvailedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DetailsOneAxis=alot_AdditionalTermLoanAvailedMember</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_alot_CreditAgreementAxis=alot_SecondAmendmentCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_CreditAgreementAxis=alot_SecondAmendmentCreditAgreementMember</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_alot_DetailsAxis=alot_BeforeAmendmentToTheCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DetailsAxis=alot_BeforeAmendmentToTheCreditAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_OtherExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_OtherExpenseMember</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818308784">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Paycheck Protection Program Loan - Additional information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 15, 2021</div></th>
<th class="th"><div>Jul. 31, 2021</div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>May 06, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Extinguishment of Debt &#8211; PPP Loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 4,466<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=alot_PaycheckProtectionProgramLoanMember', window );">Paycheck Protection Program Loan [Member] | Green wood Credit Union [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,400<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPaymentTerms', window );">Loan, payment terms</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">The PPP Loan, originally scheduled to mature on May 6, 2022, was unsecured and bore interest at a rate of 1.0% per annum, accruing from the loan date.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDate', window );">Loan, maturity date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">May  06,  2022<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Loan, interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentDecreaseForgiveness', window );">Amount of PPP loan forgiven</a></td>
<td class="nump">$ 4,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Extinguishment of Debt &#8211; PPP Loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentDecreaseForgiveness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Decrease for amounts of indebtedness forgiven by the holder of the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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(f))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentDecreaseForgiveness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28551-108399<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429444&amp;loc=SL124452920-239629<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="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 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<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.22(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="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_DebtInstrumentMaturityDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="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.22(a)(2))<br> -URI https://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 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentMaturityDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_DebtInstrumentPaymentTerms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of the payment terms of the debt instrument (for example, whether periodic payments include principal and frequency of payments) and discussion about any contingencies associated with the payment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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(a)(3))<br> -URI https://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 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123599511&amp;loc=d3e64711-112823<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentPaymentTerms</td>
</tr>
<tr>
<td style="padding-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_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126972273&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126972273&amp;loc=d3e12317-112629<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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CreditFacilityAxis=alot_PaycheckProtectionProgramLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=alot_PaycheckProtectionProgramLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=alot_GreenwoodCreditUnionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=alot_GreenwoodCreditUnionMember</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>R70.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229817998128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Financial Instruments and Risk Management - Additional Information (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jul. 30, 2020</div></th>
<th class="th"><div>Oct. 30, 2021</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember', window );">Cash Flow Hedging [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_CashPaidTerminationOfSwaps', window );">Cash paid termination of swaps</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 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="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_CrossCurrencyInterestRateContractMember', window );">Cross Currency Interest Rate Contract [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax', window );">Interest Rate Swap Termination</a></td>
<td class="nump">$ 200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_CrossCurrencyInterestRateContractMember', window );">Cross Currency Interest Rate Contract [Member] | Cash Flow Hedging [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet', window );">Amount of Gain Reclassified from Accumulated OCI into Income (Expense)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 58,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_CashPaidTerminationOfSwaps">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash paid termination of swaps.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_CashPaidTerminationOfSwaps</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems</td>
</tr>
<tr>
<td style="padding-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_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The effective portion of net gain (loss) reclassified from accumulated other comprehensive income into income on derivative instruments designated and qualifying as hedging instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624177-113959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624171-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and before adjustments, of gain (loss) from increase (decrease) in value of excluded component of derivative designated and qualifying as hedge. Adjustments include, but are not limited to, reclassifications for sale and settlement, and amounts recognized under systematic and rational method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (dd)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624171-113959<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=121577181&amp;loc=SL110061190-113977<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 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember</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_DerivativeInstrumentRiskAxis=us-gaap_CrossCurrencyInterestRateContractMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=us-gaap_CrossCurrencyInterestRateContractMember</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>83
<FILENAME>R71.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827434928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Financial Instruments and Risk Management - Schedule of Impact of the Derivative Instruments in the Condensed Consolidated Financial Statements (Detail) - Cash Flow Hedge [Member] - Cross Currency Interest Rate Contract [Member] - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax', window );">Amount of Gain (Loss) Recognized in OCI on Derivative</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="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI', window );">Location of Gain Reclassified from Accumulated OCI into Income (Expense)</a></td>
<td class="text">Other Income<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet', window );">Amount of Gain (Loss) Reclassified from Accumulated OCI into Income</a></td>
<td class="num">$ (59)<span></span>
</td>
<td class="num">$ (79)<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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems</td>
</tr>
<tr>
<td style="padding-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_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The effective portion of net gain (loss) reclassified from accumulated other comprehensive income into income on derivative instruments designated and qualifying as hedging instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624177-113959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624171-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The income statement location of the effective portion of net gain (loss) reclassified from accumulated other comprehensive income into income on derivative instruments designated and qualifying as hedging instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI</td>
</tr>
<tr>
<td style="padding-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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax and reclassification, of gain (loss) from derivative instrument designated and qualifying cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="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 20<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=121577181&amp;loc=SL110061190-113977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5618551-113959<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624171-113959<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 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br><br>Reference 5: 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 10A<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=alot_CashFlowHedgeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=alot_CashFlowHedgeMember</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_DerivativeInstrumentRiskAxis=us-gaap_CrossCurrencyInterestRateContractMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=us-gaap_CrossCurrencyInterestRateContractMember</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>84
<FILENAME>R72.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823396640">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Retention Credit - Additional Information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="1">6 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 22, 2022</div></th>
<th class="th"><div>Oct. 30, 2021</div></th>
<th class="th"><div>Jul. 31, 2021</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditDisclosureLineItems', window );"><strong>Employee Retention Credit Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_ErcReceivables', window );">ERC receivables</a></td>
<td class="nump">$ 3,100<span></span>
</td>
<td class="nump">$ 3,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 3,135<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of Sales [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditDisclosureLineItems', window );"><strong>Employee Retention Credit Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditReceivables', window );">Employee retention credit receivables</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember', window );">Selling and Marketing Expense [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditDisclosureLineItems', window );"><strong>Employee Retention Credit Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditReceivableSellingAndMarketing', window );">Employee Retention Credit Receivable - selling and marketing</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">800<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember', window );">Research and Development Expense [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditDisclosureLineItems', window );"><strong>Employee Retention Credit Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditReceivableResearchAndDevelopment', window );">Employee Retention Credit Receivable - research and development</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember', window );">General and Administrative Expense [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditDisclosureLineItems', window );"><strong>Employee Retention Credit Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses', window );">Employee Retention Credit Receivable - general and administrative expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember', window );">Prepaid Expenses and Other Current Assets [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditDisclosureLineItems', window );"><strong>Employee Retention Credit Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCredit', window );">Employee retention credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnusualOrInfrequentItemAxis=alot_CaresActMember', window );">Cares Act [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditDisclosureLineItems', window );"><strong>Employee Retention Credit Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages', window );">Percentage of refundable tax credit can be claimed of qualified wages</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="num">(70.00%)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter', window );">Threshold qualified wages per employee per calendar quarter</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10,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="Show.showAR( this, 'defref_alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter', window );">Maximum threshold employee retention credit per employee per calendar quarter</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 7,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit', window );">Percentage of reduction of gross Receipts to qualify for employee retention credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnusualOrInfrequentItemAxis=alot_CaresActMember', window );">Cares Act [Member] | Prepaid Expenses and Other Current Assets [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditDisclosureLineItems', window );"><strong>Employee Retention Credit Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeRetentionCreditReceived', window );">Employee retention credit received</a></td>
<td class="nump">$ 3,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_alot_EmployeeRetentionCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Employee retention credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_EmployeeRetentionCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_EmployeeRetentionCreditDisclosureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Employee retention credit disclosure [Line item].</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_EmployeeRetentionCreditDisclosureLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of refundable payroll taxes to be recognized as a reduction of general and administrative expenses related to the Employee Retention Credit granted under the CARES act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_EmployeeRetentionCreditReceivableResearchAndDevelopment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Employee Retention Credit Receivable - Research and Development.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_EmployeeRetentionCreditReceivableResearchAndDevelopment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_EmployeeRetentionCreditReceivableSellingAndMarketing">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of refundable payroll taxes to be recognized as a reduction of selling and marketing expense related to the Employee Retention Credit granted under the CARES act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_EmployeeRetentionCreditReceivableSellingAndMarketing</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_EmployeeRetentionCreditReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of refundable payroll taxes received.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_EmployeeRetentionCreditReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_EmployeeRetentionCreditReceived">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of ERC refundable payroll taxes received.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_EmployeeRetentionCreditReceived</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_ErcReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount receivable for Employee Retention Credit .</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_ErcReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Maximum threshold employee retention credit per employee per calendar quarter.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of reduction of gross Receipts to qualify for employee retention credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of refundable tax credit can be claimed of qualified wages.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Threshold qualified wages per employee per calendar quarter.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember</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_UnusualOrInfrequentItemAxis=alot_CaresActMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnusualOrInfrequentItemAxis=alot_CaresActMember</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>85
<FILENAME>R73.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229819576416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Royalty Obligation - Additional Information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2018</div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_GuaranteedMinimumRoyaltyPayments', window );">Guaranteed Minimum Royalty Payments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyObligationCurrent', window );">Royalty Obligation, Current</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,725<span></span>
</td>
<td class="nump">$ 2,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyObligationNonCurrent', window );">Royalty Obligation Non Current</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,415<span></span>
</td>
<td class="nump">4,361<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue', window );">Accrued Royalties, Current, Excess Royalty Payment Due</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">423<span></span>
</td>
<td class="nump">235<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=alot_HoneywellAssetPurchaseAndLicenseAgreementMember', window );">Honeywell Asset Purchase and License Agreement [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_PaymentTermPeriod', window );">Payment Term Period</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_MinimumRoyaltyPaymentObligation', window );">Minimum Royalty Payment Obligation</a></td>
<td class="nump">$ 15,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="Show.showAR( this, 'defref_alot_RoyaltyObligationCurrent', window );">Royalty Obligation, Current</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_RoyaltyObligationNonCurrent', window );">Royalty Obligation Non Current</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_ExcessRoyaltyPayments', window );">Excess Royalty Payments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,300<span></span>
</td>
<td class="nump">$ 500<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue', window );">Accrued Royalties, Current, Excess Royalty Payment Due</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 400<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_alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accrued royalties in excess of guaranteed minimum royalty obligation- amount due within one year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_ExcessRoyaltyPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of royalty expense paid in excess of guaranteed minimum payments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_ExcessRoyaltyPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_GuaranteedMinimumRoyaltyPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total Amount paid to date on the Guaranteed Minimum Royalty Obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_GuaranteedMinimumRoyaltyPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_MinimumRoyaltyPaymentObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Minimum Royalty Payment Obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_MinimumRoyaltyPaymentObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_PaymentTermPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payment term period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_PaymentTermPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_RoyaltyObligationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount of the short term portion of the guaranteed minimum royalty obligation related to Honeywell Agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RoyaltyObligationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_RoyaltyObligationNonCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount of the long term portion of the guaranteed minimum royalty obligation related to Honeywell Agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_RoyaltyObligationNonCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_TypeOfArrangementAxis=alot_HoneywellAssetPurchaseAndLicenseAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TypeOfArrangementAxis=alot_HoneywellAssetPurchaseAndLicenseAgreementMember</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>86
<FILENAME>R74.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827376528">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Additional Information (Detail)<br></strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating Lease, Weighted Average Remaining Lease Term</a></td>
<td class="text">3 years 9 months 18 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Operating Lease, Weighted Average Discount Rate, Percent</a></td>
<td class="nump">3.87%<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_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for operating lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=128292326&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 https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>87
<FILENAME>R75.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827458256">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Schedule Of Balance Sheet And Other Information Related To Operating Leases (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_OperatingLeasesAbstract', window );"><strong>Operating Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right of Use Assets</a></td>
<td class="nump">$ 794<span></span>
</td>
<td class="nump">$ 1,094<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Other Accrued Expenses</a></td>
<td class="nump">275<span></span>
</td>
<td class="nump">327<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Lease Liabilities</a></td>
<td class="nump">$ 555<span></span>
</td>
<td class="nump">$ 808<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_OperatingLeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_OperatingLeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>88
<FILENAME>R76.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229828945552">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Lease Cost Information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember', window );">General and Administrative Expense [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Operating Lease Costs</a></td>
<td class="nump">$ 460<span></span>
</td>
<td class="nump">$ 510<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_OperatingLeaseExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of operating lease expense. Excludes sublease income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>89
<FILENAME>R77.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229820249952">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Maturities of lease liabilities (Detail)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2024</a></td>
<td class="nump">$ 302<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2025</a></td>
<td class="nump">199<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2026</a></td>
<td class="nump">154<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2027</a></td>
<td class="nump">149<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">2028</a></td>
<td class="nump">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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive', window );">Thereafter</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total Lease Payments</a></td>
<td class="nump">896<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less: Imputed Interest</a></td>
<td class="num">(66)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total Lease Liabilities</a></td>
<td class="nump">$ 830<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LesseeOperatingLeaseLiabilityPaymentsDueYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>90
<FILENAME>R78.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818673056">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Supplemental cash flow information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract', window );"><strong>Cash paid for amounts included in the measurement of lease liabilities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Cash paid for operating lease liabilities</a></td>
<td class="nump">$ 314<span></span>
</td>
<td class="nump">$ 372<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.</p></div>
<a href="javascript:void(0);" onclick="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 5<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918643-209977<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)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>91
<FILENAME>R79.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229824933680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accumulated Other Comprehensive Loss - Changes in Balance of Accumulated Other Comprehensive Loss (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_ScheduleOfCapitalizationEquityLineItems', window );"><strong>Schedule of Capitalization, Equity [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="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance</a></td>
<td class="nump">$ 81,012<span></span>
</td>
<td class="nump">$ 74,683<span></span>
</td>
<td class="nump">$ 71,375<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other Comprehensive Income (Loss)</a></td>
<td class="num">(490)<span></span>
</td>
<td class="num">(1,364)<span></span>
</td>
<td class="nump">709<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance</a></td>
<td class="nump">84,367<span></span>
</td>
<td class="nump">81,012<span></span>
</td>
<td class="nump">74,683<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember', window );">Foreign Currency Translation Adjustments [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfCapitalizationEquityLineItems', window );"><strong>Schedule of Capitalization, Equity [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance</a></td>
<td class="num">(1,701)<span></span>
</td>
<td class="num">(275)<span></span>
</td>
<td class="num">(985)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax', window );">Other Comprehensive Income (Loss) before reclassification</a></td>
<td class="num">(537)<span></span>
</td>
<td class="num">(1,426)<span></span>
</td>
<td class="nump">710<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other Comprehensive Income (Loss)</a></td>
<td class="num">(537)<span></span>
</td>
<td class="num">(1,426)<span></span>
</td>
<td class="nump">710<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance</a></td>
<td class="num">(2,238)<span></span>
</td>
<td class="num">(1,701)<span></span>
</td>
<td class="num">(275)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember', window );">Net Unrealized Gain/(Loss) on Cash Flow Hedges [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfCapitalizationEquityLineItems', window );"><strong>Schedule of Capitalization, Equity [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance</a></td>
<td class="num">(47)<span></span>
</td>
<td class="num">(109)<span></span>
</td>
<td class="num">(108)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax', window );">Other Comprehensive Income (Loss) before reclassification</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(239)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax', window );">Amounts reclassified from AOCL to Earnings</a></td>
<td class="nump">47<span></span>
</td>
<td class="nump">62<span></span>
</td>
<td class="nump">193<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss', window );">Cross-Currency Interest Rate Swap Termination</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">45<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other Comprehensive Income (Loss)</a></td>
<td class="nump">47<span></span>
</td>
<td class="nump">62<span></span>
</td>
<td class="num">(1)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(47)<span></span>
</td>
<td class="num">(109)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember', window );">Accumulated Other Comprehensive Income (Loss) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfCapitalizationEquityLineItems', window );"><strong>Schedule of Capitalization, Equity [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance</a></td>
<td class="num">(1,748)<span></span>
</td>
<td class="num">(384)<span></span>
</td>
<td class="num">(1,093)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax', window );">Other Comprehensive Income (Loss) before reclassification</a></td>
<td class="num">(537)<span></span>
</td>
<td class="num">(1,426)<span></span>
</td>
<td class="nump">471<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax', window );">Amounts reclassified from AOCL to Earnings</a></td>
<td class="nump">47<span></span>
</td>
<td class="nump">62<span></span>
</td>
<td class="nump">193<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss', window );">Cross-Currency Interest Rate Swap Termination</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">45<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other Comprehensive Income (Loss)</a></td>
<td class="num">(490)<span></span>
</td>
<td class="num">(1,364)<span></span>
</td>
<td class="nump">709<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance</a></td>
<td class="num">$ (2,238)<span></span>
</td>
<td class="num">$ (1,748)<span></span>
</td>
<td class="num">$ (384)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Unrealized gain loss on termination of interest rate cash flow hedges pre tax accumulated other comprehensive income loss.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax, before reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="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 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=124507222&amp;loc=d3e1436-108581<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 5: 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(21))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=124507222&amp;loc=d3e1436-108581<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 10: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 11: 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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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(19))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="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> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 3: 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 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=124507222&amp;loc=d3e1436-108581<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ScheduleOfCapitalizationEquityLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfCapitalizationEquityLineItems</td>
</tr>
<tr>
<td style="padding-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_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember</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_StatementEquityComponentsAxis=us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember</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_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember</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>92
<FILENAME>R80.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229824944480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Shareholders' Equity - Additional information (Detail) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ClassOfStockLineItems', window );"><strong>Class of Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_StockDeliveredDuringPeriodSharesStockOptionsExercise', window );">Company shares given to employees, shares</a></td>
<td class="nump">17,752<span></span>
</td>
<td class="nump">27,222<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount', window );">Company shares given to employees, value</a></td>
<td class="nump">$ 0.3<span></span>
</td>
<td class="nump">$ 0.4<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_StockDeliveredDuringPeriodSharesStockOptionsExercise">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of stock delivered by employers to satisfy the exercise price for stock options exercised and restricted stock vested.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_StockDeliveredDuringPeriodSharesStockOptionsExercise</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Dollar value of stock delivered by employers to satisfy the exercise price for stock options exercised and restricted stock vested.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ClassOfStockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfStockLineItems</td>
</tr>
<tr>
<td style="padding-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>93
<FILENAME>R81.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229819095200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation - Additional Information (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 31, 2021</div></th>
<th class="th"><div>Jan. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of shares outstanding</a></td>
<td class="nump">547,199<span></span>
</td>
<td class="nump">598,043<span></span>
</td>
<td class="nump">622,083<span></span>
</td>
<td class="nump">679,044<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Number of options granted</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Aggregate intrinsic value of options exercised</a></td>
<td class="nump">$ 200,000<span></span>
</td>
<td class="nump">$ 26,000<span></span>
</td>
<td class="nump">$ 4,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_ReservationOfSharesUnderEmployeeStockPurchasePlan', window );">Reservation of shares under Stock Purchase Plan</a></td>
<td class="nump">40,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestrictedStockExpense', window );">Restricted Stock or Unit Expense</a></td>
<td class="nump">$ 1,271,000<span></span>
</td>
<td class="nump">$ 1,266,000<span></span>
</td>
<td class="nump">$ 1,285,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=alot_EmployeeStockPurchasePlanMember', window );">Employee Stock Purchase 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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate', window );">Employee Stock Purchase Plan discount rate</a></td>
<td class="nump">15.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=alot_TwoThousandSevenEquityIncentivePlanMember', window );">2007 Equity Incentive 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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of shares outstanding</a></td>
<td class="nump">276,574<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=alot_TwoThousandEighteenEquityIncentivePlanMember', window );">2018 Equity Incentive 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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Shares authorized for grant under the Plan</a></td>
<td class="nump">950,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of shares outstanding</a></td>
<td class="nump">135,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember', window );">2022 Employee Stock Purchase Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Shares purchase under Employee Stock Purchase Plan</a></td>
<td class="nump">5,045<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Shares available for grant under the Plan</a></td>
<td class="nump">34,955<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=alot_PriorEmployeeStockPurchasePlanMember', window );">Prior Employee Stock Purchase 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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Shares purchase under Employee Stock Purchase Plan</a></td>
<td class="nump">1,550<span></span>
</td>
<td class="nump">8,092<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Stock Options [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions', window );">Unrecognized compensation expense related to options</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1', window );">Aggregate intrinsic value of option exercised</a></td>
<td class="nump">$ 50,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Unrecognized compensation expense to be recognized, Weighted average period</a></td>
<td class="text">1 year 3 months 18 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>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions', window );">Unrecognized compensation expense related to RSUs and RSAs</a></td>
<td class="nump">$ 2,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs) [Member] | 2018 Equity Incentive 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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Number of unvested shares</a></td>
<td class="nump">124,962<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">RSA [Member] | 2015 Equity Incentive 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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of shares outstanding</a></td>
<td class="nump">135,125<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">RSA [Member] | 2018 Equity Incentive 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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Number of unvested shares</a></td>
<td class="nump">21,172<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember', window );">Performance Based RSUs [Member] | 2018 Equity Incentive 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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Number of unvested shares</a></td>
<td class="nump">128,793<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=alot_RestrictedStockAwardMember', window );">Restricted Stock Award [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestrictedStockExpense', window );">Restricted Stock or Unit Expense</a></td>
<td class="nump">$ 65,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>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_ReservationOfSharesUnderEmployeeStockPurchasePlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Reservation of shares under employee stock purchase plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_ReservationOfSharesUnderEmployeeStockPurchasePlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost to be recognized for option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RestrictedStockExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for award of restricted stock or unit under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedStockExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Discount rate from fair value on purchase date that participants pay for shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares authorized for issuance under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued during the period as a result of an employee stock purchase plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans</td>
</tr>
<tr>
<td style="padding-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=alot_EmployeeStockPurchasePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=alot_EmployeeStockPurchasePlanMember</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=alot_TwoThousandSevenEquityIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=alot_TwoThousandSevenEquityIncentivePlanMember</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=alot_TwoThousandEighteenEquityIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=alot_TwoThousandEighteenEquityIncentivePlanMember</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=alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember</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=alot_PriorEmployeeStockPurchasePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=alot_PriorEmployeeStockPurchasePlanMember</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_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=alot_TwoThousandFifteenEquityIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=alot_TwoThousandFifteenEquityIncentivePlanMember</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_PerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember</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=alot_RestrictedStockAwardMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=alot_RestrictedStockAwardMember</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>94
<FILENAME>R82.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229828368320">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation - Share-Based Compensation Expense (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockOptionPlanExpense', window );">Stock Options</a></td>
<td class="nump">$ 7<span></span>
</td>
<td class="nump">$ 210<span></span>
</td>
<td class="nump">$ 517<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestrictedStockExpense', window );">Restricted Stock Awards and Restricted Stock Units</a></td>
<td class="nump">1,271<span></span>
</td>
<td class="nump">1,266<span></span>
</td>
<td class="nump">1,285<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_EmployeeStockPurchasePlanExpense', window );">Employee Stock Purchase Plan</a></td>
<td class="nump">12<span></span>
</td>
<td class="nump">17<span></span>
</td>
<td class="nump">17<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Total</a></td>
<td class="nump">$ 1,290<span></span>
</td>
<td class="nump">$ 1,493<span></span>
</td>
<td class="nump">$ 1,819<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_EmployeeStockPurchasePlanExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Employee stock purchase plan expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_EmployeeStockPurchasePlanExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RestrictedStockExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for award of restricted stock or unit under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedStockExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationAbstract</td>
</tr>
<tr>
<td style="padding-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_StockOptionPlanExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockOptionPlanExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>95
<FILENAME>R83.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818213056">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation - Aggregated Information Regarding Stock Options Granted (Detail) - $ / shares<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Beginning balance, Number of Options</a></td>
<td class="nump">598,043<span></span>
</td>
<td class="nump">622,083<span></span>
</td>
<td class="nump">679,044<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Granted, Number of Options</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised, Number of Options</a></td>
<td class="num">(42,944)<span></span>
</td>
<td class="num">(6,425)<span></span>
</td>
<td class="num">(1,200)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod', window );">Forfeited, Number of Options</a></td>
<td class="num">(5,500)<span></span>
</td>
<td class="num">(17,615)<span></span>
</td>
<td class="num">(54,361)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod', window );">Canceled, Number of Options</a></td>
<td class="num">(2,400)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,400)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Ending balance, Number of Options</a></td>
<td class="nump">547,199<span></span>
</td>
<td class="nump">598,043<span></span>
</td>
<td class="nump">622,083<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Beginning balance, Weighted-Average Exercise Price Per Share</a></td>
<td class="nump">$ 14.67<span></span>
</td>
<td class="nump">$ 14.63<span></span>
</td>
<td class="nump">$ 14.46<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted, Weighted-Average Exercise Price Per Share</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised, Weighted-Average Exercise Price Per Share</a></td>
<td class="nump">8.74<span></span>
</td>
<td class="nump">9.34<span></span>
</td>
<td class="nump">7.6<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice', window );">Forfeited, Weighted-Average Exercise Price Per Share</a></td>
<td class="nump">15.42<span></span>
</td>
<td class="nump">15.09<span></span>
</td>
<td class="nump">12.89<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice', window );">Cancelled, Weighted-Average Exercise Price Per Share</a></td>
<td class="nump">8.09<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">7.36<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Ending balance, Weighted-Average Exercise Price Per Share</a></td>
<td class="nump">$ 15.16<span></span>
</td>
<td class="nump">$ 14.67<span></span>
</td>
<td class="nump">$ 14.63<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_ShareBasedCompensationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationAbstract</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options or other stock instruments for which the right to exercise has lapsed under the terms of the plan agreements.</p></div>
<a href="javascript:void(0);" onclick="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of shares 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.</p></div>
<a href="javascript:void(0);" onclick="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees could have acquired the underlying shares with respect to stock options of the plan that expired.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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)(04)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.</p></div>
<a href="javascript:void(0);" onclick="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>96
<FILENAME>R84.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818189488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation - Summary of Options Outstanding (Detail) - $ / shares<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>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 31, 2021</div></th>
<th class="th"><div>Jan. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of shares outstanding, total</a></td>
<td class="nump">547,199<span></span>
</td>
<td class="nump">598,043<span></span>
</td>
<td class="nump">622,083<span></span>
</td>
<td class="nump">679,044<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1', window );">Outstanding, Weighted Average Exercise Price</a></td>
<td class="nump">$ 15.16<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Exercisable, Weighted Average Exercise Price</a></td>
<td class="nump">$ 15.16<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2', window );">Outstanding Remaining Contractual Life</a></td>
<td class="text">3 years 8 months 12 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>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Number of shares exercisable, total</a></td>
<td class="nump">547,199<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Exercisable Remaining Contractual Life</a></td>
<td class="text">3 years 8 months 12 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>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alot_RangeThreeMember', window );">$5.00 - $10.00 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit', window );">Outstanding Range of Exercise prices, Lower Limit</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit', window );">Outstanding Range of Exercise prices, Upper Limit</a></td>
<td class="nump">$ 10<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions', window );">Outstanding, Number of shares</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1', window );">Outstanding, Weighted Average Exercise Price</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Exercisable, Weighted Average Exercise Price</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions', window );">Exercisable, Number of shares</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alot_RangeFourMember', window );">$10.01 - $15.00 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit', window );">Outstanding Range of Exercise prices, Lower Limit</a></td>
<td class="nump">$ 10.01<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit', window );">Outstanding Range of Exercise prices, Upper Limit</a></td>
<td class="nump">$ 15<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions', window );">Outstanding, Number of shares</a></td>
<td class="nump">332,849<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1', window );">Outstanding, Weighted Average Exercise Price</a></td>
<td class="nump">$ 13.68<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Exercisable, Weighted Average Exercise Price</a></td>
<td class="nump">$ 13.68<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2', window );">Outstanding Remaining Contractual Life</a></td>
<td class="text">2 years 10 months 24 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>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions', window );">Exercisable, Number of shares</a></td>
<td class="nump">332,849<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Exercisable Remaining Contractual Life</a></td>
<td class="text">2 years 10 months 24 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>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alot_RangeFiveMember', window );">$15.01 - $20.00 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit', window );">Outstanding Range of Exercise prices, Lower Limit</a></td>
<td class="nump">$ 15.01<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit', window );">Outstanding Range of Exercise prices, Upper Limit</a></td>
<td class="nump">$ 20<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions', window );">Outstanding, Number of shares</a></td>
<td class="nump">214,350<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1', window );">Outstanding, Weighted Average Exercise Price</a></td>
<td class="nump">$ 17.45<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Exercisable, Weighted Average Exercise Price</a></td>
<td class="nump">$ 17.45<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2', window );">Outstanding Remaining Contractual Life</a></td>
<td class="text">4 years 9 months 18 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>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions', window );">Exercisable, Number of shares</a></td>
<td class="nump">214,350<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Exercisable Remaining Contractual Life</a></td>
<td class="text">4 years 9 months 18 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The 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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of shares 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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of shares 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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The 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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, 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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average 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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average price as of the balance sheet date at which grantees 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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining 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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alot_RangeThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alot_RangeThreeMember</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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alot_RangeFourMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alot_RangeFourMember</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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alot_RangeFiveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=alot_RangeFiveMember</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>97
<FILENAME>R85.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818249968">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation - Aggregated Information Regarding RSUs and RSAs Granted (Detail) - Restricted Stock Award Preferred Stock Unit And Restricted Stock Unit [Member] - $ / shares<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Beginning balance, Outstanding Restricted Stock Units and Restricted Stock Awards</a></td>
<td class="nump">220,980<span></span>
</td>
<td class="nump">197,413<span></span>
</td>
<td class="nump">134,634<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted, Restricted Stock Units and Restricted Stock Awards</a></td>
<td class="nump">141,371<span></span>
</td>
<td class="nump">151,406<span></span>
</td>
<td class="nump">245,131<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested, Restricted Stock Units and Restricted Stock Awards</a></td>
<td class="num">(85,324)<span></span>
</td>
<td class="num">(126,939)<span></span>
</td>
<td class="num">(64,997)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited, Restricted Stock Units and Restricted Stock Awards</a></td>
<td class="num">(2,100)<span></span>
</td>
<td class="num">(900)<span></span>
</td>
<td class="num">(117,355)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Ending balance, Outstanding Restricted Stock Units and Restricted Stock Awards</a></td>
<td class="nump">274,927<span></span>
</td>
<td class="nump">220,980<span></span>
</td>
<td class="nump">197,413<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Beginning balance, Weighted Average Grant Date Fair Value</a></td>
<td class="nump">$ 13.23<span></span>
</td>
<td class="nump">$ 9.96<span></span>
</td>
<td class="nump">$ 16.79<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted, Weighted Average Grant Date Fair Value</a></td>
<td class="nump">12.7<span></span>
</td>
<td class="nump">14.51<span></span>
</td>
<td class="nump">7.61<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested, Weighted Average Grant Date Fair Value</a></td>
<td class="nump">13.45<span></span>
</td>
<td class="nump">10.43<span></span>
</td>
<td class="nump">17.28<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited, Weighted Average Grant Date Fair Value</a></td>
<td class="nump">13.25<span></span>
</td>
<td class="nump">14.26<span></span>
</td>
<td class="nump">8.83<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Ending balance, Weighted Average Grant Date Fair Value</a></td>
<td class="nump">$ 12.82<span></span>
</td>
<td class="nump">$ 13.23<span></span>
</td>
<td class="nump">$ 9.96<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.</p></div>
<a href="javascript:void(0);" onclick="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</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>98
<FILENAME>R86.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818157456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Components of Income before Income Taxes (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic', window );">Domestic</a></td>
<td class="nump">$ 1,773<span></span>
</td>
<td class="nump">$ 5,046<span></span>
</td>
<td class="num">$ (1,193)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign', window );">Foreign</a></td>
<td class="nump">1,637<span></span>
</td>
<td class="nump">1,988<span></span>
</td>
<td class="nump">3,372<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before Income Taxes</a></td>
<td class="nump">$ 3,410<span></span>
</td>
<td class="nump">$ 7,034<span></span>
</td>
<td class="nump">$ 2,179<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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.3)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-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 https://asc.fasb.org/extlink&amp;oid=126901519&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 (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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 20<br> -Section 25<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126941158&amp;loc=d3e41242-110953<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 https://asc.fasb.org/extlink&amp;oid=126901519&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 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 7: 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(8))<br> -URI https://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 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 10: 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(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.</p></div>
<a href="javascript:void(0);" onclick="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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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.3)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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>99
<FILENAME>R87.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229817489424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Components of Provision for Income Taxes (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract', window );"><strong>Current:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentFederalTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">$ 902<span></span>
</td>
<td class="num">$ (183)<span></span>
</td>
<td class="nump">$ 1,272<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">State</a></td>
<td class="nump">313<span></span>
</td>
<td class="nump">76<span></span>
</td>
<td class="nump">224<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentForeignTaxExpenseBenefit', window );">Foreign</a></td>
<td class="nump">870<span></span>
</td>
<td class="nump">501<span></span>
</td>
<td class="nump">420<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Current Income Tax Expense</a></td>
<td class="nump">2,085<span></span>
</td>
<td class="nump">394<span></span>
</td>
<td class="nump">1,916<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract', window );"><strong>Deferred:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit', window );">Federal</a></td>
<td class="num">(1,053)<span></span>
</td>
<td class="nump">180<span></span>
</td>
<td class="num">(910)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit', window );">State</a></td>
<td class="num">(315)<span></span>
</td>
<td class="nump">177<span></span>
</td>
<td class="num">(189)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredForeignIncomeTaxExpenseBenefit', window );">Foreign</a></td>
<td class="nump">32<span></span>
</td>
<td class="num">(146)<span></span>
</td>
<td class="nump">78<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred Income Tax Expense Total</a></td>
<td class="num">(1,336)<span></span>
</td>
<td class="nump">211<span></span>
</td>
<td class="num">(1,021)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Total</a></td>
<td class="nump">$ 749<span></span>
</td>
<td class="nump">$ 605<span></span>
</td>
<td class="nump">$ 895<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_CurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://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 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentFederalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CurrentForeignTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 9<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentForeignTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CurrentIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-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_CurrentStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 9<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredFederalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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 https://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 https://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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFederalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredForeignIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://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 https://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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredForeignIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-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_DeferredStateAndLocalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>100
<FILENAME>R88.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818228192">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Reconciliation of income tax provision/(benefit) With The Amount Computed By Applying The Statutory Federal Income Tax Rate To The Income Before Income Tax Provision/(benefit) (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate', window );">Income Tax Provision at Statutory Rate</a></td>
<td class="nump">$ 716<span></span>
</td>
<td class="nump">$ 1,477<span></span>
</td>
<td class="nump">$ 458<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in Valuation Allowance</a></td>
<td class="nump">182<span></span>
</td>
<td class="nump">57<span></span>
</td>
<td class="num">(81)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential', window );">Foreign Rate Differential</a></td>
<td class="nump">157<span></span>
</td>
<td class="nump">61<span></span>
</td>
<td class="nump">197<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_Incometaxreconciliationchangeinreserves', window );">Change in Reserves Related to ASC 740 Liability</a></td>
<td class="nump">93<span></span>
</td>
<td class="num">(245)<span></span>
</td>
<td class="num">(10)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit', window );">Denmark Statutory Audit</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">341<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment', window );">Meals and Entertainment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">9<span></span>
</td>
<td class="nump">11<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes', window );">Canada Withholding Taxes</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">62<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome', window );">Global Intangible Low Taxed Income</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">14<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationTaxCreditsForeign', window );">Foreign Derived Intangible Income</a></td>
<td class="num">(180)<span></span>
</td>
<td class="num">(55)<span></span>
</td>
<td class="num">(150)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationTaxCreditsResearch', window );">R&amp;D Credits</a></td>
<td class="num">(160)<span></span>
</td>
<td class="num">(180)<span></span>
</td>
<td class="num">(157)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost', window );">Share Based Compensation</a></td>
<td class="num">(52)<span></span>
</td>
<td class="num">(95)<span></span>
</td>
<td class="nump">171<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes', window );">Return to Provision Adjustment</a></td>
<td class="num">(22)<span></span>
</td>
<td class="nump">368<span></span>
</td>
<td class="num">(2)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes', window );">State Taxes, Net of Federal Tax Effect</a></td>
<td class="num">(2)<span></span>
</td>
<td class="nump">143<span></span>
</td>
<td class="nump">28<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_IncomeTaxReconciliationPppLoanForgiveness', window );">PPP Loan Forgiveness</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(937)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationOtherAdjustments', window );">Other</a></td>
<td class="nump">17<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="nump">13<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Total</a></td>
<td class="nump">$ 749<span></span>
</td>
<td class="nump">$ 605<span></span>
</td>
<td class="nump">$ 895<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income tax reconciliation global intangible low taxed income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income Tax Reconciliation Other Adjustments Statuory Audit</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income Tax Reconciliation Other Adjustments Withholding Taxes</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_IncomeTaxReconciliationPppLoanForgiveness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income tax reconciliation ppp loan forgiveness.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_IncomeTaxReconciliationPppLoanForgiveness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_Incometaxreconciliationchangeinreserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income tax reconciliation change in reserves.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_Incometaxreconciliationchangeinreserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the 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 increase (decrease) in the valuation allowance for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeTaxReconciliationOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the 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 other adjustments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationOtherAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationPriorYearIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the 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 revisions of previously reported income tax expense (benefit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the 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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationTaxCreditsResearch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the 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 research tax credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationTaxCreditsResearch</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>101
<FILENAME>R89.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818738992">
<tr>
<th class="tl" colspan="2" rowspan="1"><div style="width: 200px;"><strong>Income Taxes - Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComponentsOfDeferredTaxAssetsAbstract', window );"><strong>Deferred Tax Assets:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsInventory', window );">Inventory</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 2,710<span></span>
</td>
<td class="nump">$ 2,159<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DeferredTaxAssetsRoyaltyLiability', window );">Honeywell Royalty Liability</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">3,008<span></span>
</td>
<td class="nump">2,655<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch', window );">State R&amp;D Credits</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,851<span></span>
</td>
<td class="nump">1,925<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost', window );">Share-Based Compensation</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">620<span></span>
</td>
<td class="nump">593<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses', window );">Bad Debt</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">180<span></span>
</td>
<td class="nump">213<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves', window );">Warranty Reserve</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">258<span></span>
</td>
<td class="nump">198<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DeferredTaxAssetsCompensationAccruals', window );">Compensation Accrual</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">248<span></span>
</td>
<td class="nump">322<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Net Operating Loss</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">135<span></span>
</td>
<td class="nump">152<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability', window );">ASU 842 Adjustment &#8211; Lease Liability</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">53<span></span>
</td>
<td class="nump">93<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DeferredTaxAssetsUnrecognizedTaxBenefits', window );">Unrecognized State Tax Benefits</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">58<span></span>
</td>
<td class="nump">64<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign', window );">Foreign Tax Credit</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">154<span></span>
</td>
<td class="nump">154<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DeferredTaxAssetsDeferredServiceContractRevenue', window );">Deferred Service Contract Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">90<span></span>
</td>
<td class="nump">61<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DeferredTaxAssetsCapitalization', window );">Section 174 Capitalization</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">1,175<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOther', window );">Other</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">281<span></span>
</td>
<td class="nump">224<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGross', window );">Deferred Tax Assets, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">10,821<span></span>
</td>
<td class="nump">8,813<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract', window );"><strong>Deferred Tax Liabilities:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment', window );">Accumulated Tax Depreciation in Excess of Book Depreciation</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,037<span></span>
</td>
<td class="nump">455<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets', window );">Intangibles</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">694<span></span>
</td>
<td class="nump">767<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability', window );">ASU 842 Adjustment &#8211; Lease Liability</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">50<span></span>
</td>
<td class="nump">90<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesOther', window );">Other</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">180<span></span>
</td>
<td class="nump">318<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilities', window );">Deferred Tax Liabilities, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,961<span></span>
</td>
<td class="nump">1,630<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DeferredTaxAssetsLiabilitiesGross', window );">Subtotal</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">8,860<span></span>
</td>
<td class="nump">7,183<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsValuationAllowance', window );">Valuation Allowance</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(2,120)<span></span>
</td>
<td class="num">(1,778)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsLiabilitiesNet', window );">Net Deferred Tax Assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">6,740<span></span>
</td>
<td class="nump">5,405<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract', window );"><strong>Deferred taxes are reflected in the consolidated balance sheet as follows:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsNet', window );">Deferred Tax Assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">6,907<span></span>
</td>
<td class="nump">5,591<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilities', window );">Deferred Tax Liabilities</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(167)<span></span>
</td>
<td class="num">(186)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsLiabilitiesNet', window );">Total Net Deferred Tax Assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 6,740<span></span>
</td>
<td class="nump">$ 5,405<span></span>
</td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Beginning in fiscal 2023, changes to Section 174 of the Internal Revenue Code made by the Tax Cuts and Jobs Act of 2017 no longer permit an immediate deduction for research and development expenditures in the tax year that such costs are incurred. These costs are capitalized resulting in an increase in deferred tax assets of $1.2 million.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred Tax Assets Accounting Standard Adjustment Lease Liability</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_DeferredTaxAssetsCapitalization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets capitalization.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DeferredTaxAssetsCapitalization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_DeferredTaxAssetsCompensationAccruals">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets compensation accruals.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DeferredTaxAssetsCompensationAccruals</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_DeferredTaxAssetsDeferredServiceContractRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets deferred service contract revenue.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DeferredTaxAssetsDeferredServiceContractRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_DeferredTaxAssetsLiabilitiesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets liabilities gross.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DeferredTaxAssetsLiabilitiesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_DeferredTaxAssetsRoyaltyLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets, royalty liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DeferredTaxAssetsRoyaltyLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_DeferredTaxAssetsUnrecognizedTaxBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DeferredTaxAssetsUnrecognizedTaxBenefits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred Tax Liability Accounting Standard Adjustment Lease Liability</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ComponentsOfDeferredTaxAssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComponentsOfDeferredTaxAssetsAbstract</td>
</tr>
<tr>
<td style="padding-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_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-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_ComponentsOfDeferredTaxLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-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_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsOperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsTaxCreditCarryforwardsForeign">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible foreign tax credit carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 3: 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 3<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsTaxCreditCarryforwardsResearch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible research tax credit carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-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 3<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from allowance for credit loss on financing receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from warranty reserves.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.</p></div>
<a href="javascript:void(0);" onclick="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 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredTaxLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>102
<FILENAME>R90.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827313056">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities (Parenthetical) (Detail)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_IncreaseDecreaseInDeferredTaxAssets', window );">Increase decrease in deferred tax assets</a></td>
<td class="nump">$ 1.2<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_IncreaseDecreaseInDeferredTaxAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase decrease in deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_IncreaseDecreaseInDeferredTaxAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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>103
<FILENAME>R91.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818210240">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Change in Balance of Unrecognized Tax Benefits, Excluding Interest and Penalties (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefits', window );">Balance ,beginning of the year</a></td>
<td class="nump">$ 303<span></span>
</td>
<td class="nump">$ 384<span></span>
</td>
<td class="nump">$ 362<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions', window );">Increases in prior period tax positions</a></td>
<td class="nump">24<span></span>
</td>
<td class="nump">63<span></span>
</td>
<td class="nump">59<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions', window );">Increases in current period tax positions</a></td>
<td class="nump">136<span></span>
</td>
<td class="nump">67<span></span>
</td>
<td class="nump">5<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations', window );">Reductions related to lapse of statutes of limitations</a></td>
<td class="num">(49)<span></span>
</td>
<td class="num">(211)<span></span>
</td>
<td class="num">(42)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefits', window );">Balance, end of the year</a></td>
<td class="nump">$ 414<span></span>
</td>
<td class="nump">$ 303<span></span>
</td>
<td class="nump">$ 384<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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_UnrecognizedTaxBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="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 10B<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=SL37586934-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 15A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.</p></div>
<a href="javascript:void(0);" onclick="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 15A<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in unrecognized tax benefits resulting from tax positions taken in prior period tax returns.</p></div>
<a href="javascript:void(0);" onclick="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 15A<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in unrecognized tax benefits resulting from lapses of applicable statutes of limitations.</p></div>
<a href="javascript:void(0);" onclick="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 15A<br> -Subparagraph (a)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>104
<FILENAME>R92.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818329920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Additional Information (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 31, 2021</div></th>
<th class="th"><div>Jan. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Effective tax rate for income from continuing operation</a></td>
<td class="nump">22.00%<span></span>
</td>
<td class="nump">8.60%<span></span>
</td>
<td class="nump">41.10%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsValuationAllowance', window );">Valuation allowance</a></td>
<td class="nump">$ 2,120,000<span></span>
</td>
<td class="nump">$ 1,778,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense', window );">Recognized (benefit) expense related to interest and penalties</a></td>
<td class="nump">49,000<span></span>
</td>
<td class="nump">211,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued', window );">Accrued potential interest and penalties</a></td>
<td class="nump">77,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Deferred Tax Assets Operating loss carryforwards</a></td>
<td class="nump">135,000<span></span>
</td>
<td class="nump">152,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch', window );">Deferred tax assets tax credit carryforwards research</a></td>
<td class="nump">$ 1,851,000<span></span>
</td>
<td class="nump">1,925,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod', window );">Deferred tax assets tax credit carryforwards expiration period</a></td>
<td class="text">2023 through 2030<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignEarningsRepatriated', window );">Deemed repatriated earnings</a></td>
<td class="nump">$ 8,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefits', window );">Recognized tax benefits excluding interest and penalties</a></td>
<td class="nump">414,000<span></span>
</td>
<td class="nump">303,000<span></span>
</td>
<td class="nump">$ 384,000<span></span>
</td>
<td class="nump">$ 362,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign', window );">Foreign tax credit</a></td>
<td class="nump">154,000<span></span>
</td>
<td class="nump">154,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations', window );">Unrecognized tax benefits as a result of the expiration of the statute of limitations</a></td>
<td class="nump">49,000<span></span>
</td>
<td class="nump">$ 211,000<span></span>
</td>
<td class="nump">$ 42,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DetailsOfIncomeTaxBenefitAxis=alot_AdditionalForeignTaxCreditMember', window );">Additional Foreign Tax Credit [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign', window );">Foreign tax credit</a></td>
<td class="nump">200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DetailsOfIncomeTaxBenefitAxis=alot_TaxCreditsCarryForwardsMember', window );">Tax Credits Carry Forwards [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch', window );">Deferred tax assets tax credit carryforwards research</a></td>
<td class="nump">1,900,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CN', window );">CHINA</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Deferred Tax Assets Operating loss carryforwards</a></td>
<td class="nump">$ 100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod', window );">Deferred tax assets operating loss carryforwards expiration period</a></td>
<td class="text">2024 through 2028<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=stpr_DE', window );">DELAWARE</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Deferred Tax Assets Operating loss carryforwards</a></td>
<td class="nump">$ 100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember', window );">Federal 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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefits', window );">Recognized tax benefits excluding interest and penalties</a></td>
<td class="nump">27,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations', window );">Unrecognized tax benefits as a result of the expiration of the statute of limitations</a></td>
<td class="nump">$ 22,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>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets operating loss carryforwards expiration period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets tax credit carryforwards expiration period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_DeferredTaxAssetsOperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsTaxCreditCarryforwardsForeign">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible foreign tax credit carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 3: 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 3<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsTaxCreditCarryforwardsResearch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible research tax credit carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-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 3<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.</p></div>
<a href="javascript:void(0);" onclick="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 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="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_ForeignEarningsRepatriated">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of foreign earnings repatriated from subsidiaries outside the country of domicile.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignEarningsRepatriated</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="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 10B<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=SL37586934-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 15A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount accrued for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.</p></div>
<a href="javascript:void(0);" onclick="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 15<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32718-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.</p></div>
<a href="javascript:void(0);" onclick="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 15<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32718-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in unrecognized tax benefits resulting from lapses of applicable statutes of limitations.</p></div>
<a href="javascript:void(0);" onclick="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 15A<br> -Subparagraph (a)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_alot_DetailsOfIncomeTaxBenefitAxis=alot_AdditionalForeignTaxCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DetailsOfIncomeTaxBenefitAxis=alot_AdditionalForeignTaxCreditMember</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_alot_DetailsOfIncomeTaxBenefitAxis=alot_TaxCreditsCarryForwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_DetailsOfIncomeTaxBenefitAxis=alot_TaxCreditsCarryForwardsMember</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_CN">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CN</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=stpr_DE">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=stpr_DE</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_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember</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>105
<FILENAME>R93.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229819940576">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Nature of Operations, Segment Reporting and Geographical Information - Additional Information (Detail)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($) </div>
<div>Segment</div>
</th>
<th class="th">
<div>Jan. 31, 2022 </div>
<div>USD ($) </div>
<div>Segment</div>
</th>
<th class="th">
<div>Jan. 31, 2021 </div>
<div>Segment</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfReportableSegments', window );">Number of reporting segments | Segment</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_NumberOfCustomersAccountingForCreditRisk', window );">Customer accounted for greater than 10% of net sales | Segment</a></td>
<td class="nump">10<span></span>
</td>
<td class="nump">10<span></span>
</td>
<td class="nump">10<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill assigned</a></td>
<td class="nump">$ 14,658<span></span>
</td>
<td class="nump">$ 12,156<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=alot_TestAndMeasurementMember', window );">T&amp;M [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill assigned</a></td>
<td class="nump">4,500<span></span>
</td>
<td class="nump">4,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=alot_ProductIdentificationMember', window );">Product Identification [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill assigned</a></td>
<td class="nump">$ 10,100<span></span>
</td>
<td class="nump">$ 7,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_NumberOfCustomersAccountingForCreditRisk">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of customers accounting for credit risk.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_NumberOfCustomersAccountingForCreditRisk</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: 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(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8672-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportableSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=alot_TestAndMeasurementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=alot_TestAndMeasurementMember</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=alot_ProductIdentificationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=alot_ProductIdentificationMember</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>106
<FILENAME>R94.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818744224">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Nature of Operations, Segment Reporting and Geographical Information - Net Sales and Segment Operating Profit (loss)  for Each Reporting Segment (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 142,527<span></span>
</td>
<td class="nump">$ 117,480<span></span>
</td>
<td class="nump">$ 116,033<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">Corporate Expenses</a></td>
<td class="nump">11,435<span></span>
</td>
<td class="nump">9,553<span></span>
</td>
<td class="nump">9,420<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating Income</a></td>
<td class="nump">5,443<span></span>
</td>
<td class="nump">4,256<span></span>
</td>
<td class="nump">2,433<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Other Income (Expense), Net</a></td>
<td class="num">$ (2,033)<span></span>
</td>
<td class="nump">$ 2,778<span></span>
</td>
<td class="num">$ (254)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_PercentageOfOperatingProfitToNetSales', window );">Segment Operating Profit % of Net Sales</a></td>
<td class="nump">11.80%<span></span>
</td>
<td class="nump">11.80%<span></span>
</td>
<td class="nump">10.20%<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before Income Taxes</a></td>
<td class="nump">$ 3,410<span></span>
</td>
<td class="nump">$ 7,034<span></span>
</td>
<td class="nump">$ 2,179<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income Tax Provision</a></td>
<td class="nump">749<span></span>
</td>
<td class="nump">605<span></span>
</td>
<td class="nump">895<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income</a></td>
<td class="nump">2,661<span></span>
</td>
<td class="nump">6,429<span></span>
</td>
<td class="nump">1,284<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating Income</a></td>
<td class="nump">16,878<span></span>
</td>
<td class="nump">13,809<span></span>
</td>
<td class="nump">11,853<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member] | Product Identification [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">103,089<span></span>
</td>
<td class="nump">90,915<span></span>
</td>
<td class="nump">90,268<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating Income</a></td>
<td class="nump">$ 7,889<span></span>
</td>
<td class="nump">$ 10,411<span></span>
</td>
<td class="nump">$ 12,885<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_PercentageOfOperatingProfitToNetSales', window );">Segment Operating Profit % of Net Sales</a></td>
<td class="nump">7.70%<span></span>
</td>
<td class="nump">11.50%<span></span>
</td>
<td class="nump">14.30%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member] | T&amp;M [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 39,438<span></span>
</td>
<td class="nump">$ 26,565<span></span>
</td>
<td class="nump">$ 25,765<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating Income</a></td>
<td class="nump">$ 8,989<span></span>
</td>
<td class="nump">$ 3,398<span></span>
</td>
<td class="num">$ (1,032)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_PercentageOfOperatingProfitToNetSales', window );">Segment Operating Profit % of Net Sales</a></td>
<td class="nump">22.80%<span></span>
</td>
<td class="nump">12.80%<span></span>
</td>
<td class="num">(4.00%)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate Expenses [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">Corporate Expenses</a></td>
<td class="nump">$ 11,435<span></span>
</td>
<td class="nump">$ 9,553<span></span>
</td>
<td class="nump">$ 9,420<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_PercentageOfOperatingProfitToNetSales">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of operating profit to net sales.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_PercentageOfOperatingProfitToNetSales</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</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_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-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 https://asc.fasb.org/extlink&amp;oid=126901519&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 (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<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 20<br> -Section 25<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126941158&amp;loc=d3e41242-110953<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 https://asc.fasb.org/extlink&amp;oid=126901519&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 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 7: 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(8))<br> -URI https://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 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 10: 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(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-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 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130543-203045<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 https://asc.fasb.org/extlink&amp;oid=126901519&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-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 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<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 https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=alot_ProductIdentificationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=alot_ProductIdentificationMember</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=alot_TestAndMeasurementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=alot_TestAndMeasurementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>107
<FILENAME>R95.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229818054672">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Nature of Operations, Segment Reporting and Geographical Information - Summary of Other Information by Segment (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Assets</a></td>
<td class="nump">$ 139,207<span></span>
</td>
<td class="nump">$ 114,955<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and Amortization</a></td>
<td class="nump">3,916<span></span>
</td>
<td class="nump">3,994<span></span>
</td>
<td class="nump">$ 5,983<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital Expenditures</a></td>
<td class="nump">229<span></span>
</td>
<td class="nump">1,796<span></span>
</td>
<td class="nump">2,587<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member] | Product Identification [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Assets</a></td>
<td class="nump">69,607<span></span>
</td>
<td class="nump">51,732<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and Amortization</a></td>
<td class="nump">2,219<span></span>
</td>
<td class="nump">1,157<span></span>
</td>
<td class="nump">1,835<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital Expenditures</a></td>
<td class="nump">121<span></span>
</td>
<td class="nump">847<span></span>
</td>
<td class="nump">1,563<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member] | T&amp;M [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Assets</a></td>
<td class="nump">60,730<span></span>
</td>
<td class="nump">50,374<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and Amortization</a></td>
<td class="nump">1,697<span></span>
</td>
<td class="nump">2,837<span></span>
</td>
<td class="nump">4,148<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital Expenditures</a></td>
<td class="nump">108<span></span>
</td>
<td class="nump">949<span></span>
</td>
<td class="nump">$ 1,024<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate Expenses [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Assets</a></td>
<td class="nump">$ 8,870<span></span>
</td>
<td class="nump">$ 12,849<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_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<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)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 20: 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 https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<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 https://asc.fasb.org/extlink&amp;oid=126975872&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 23: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=alot_ProductIdentificationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=alot_ProductIdentificationMember</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=alot_TestAndMeasurementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=alot_TestAndMeasurementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>108
<FILENAME>R96.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229819870672">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Nature of Operations, Segment Reporting and Geographical Information - Summary of Selected Financial Information by Geographic Area (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 142,527<span></span>
</td>
<td class="nump">$ 117,480<span></span>
</td>
<td class="nump">$ 116,033<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-Lived Assets</a></td>
<td class="nump">35,520<span></span>
</td>
<td class="nump">30,641<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United States [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">91,917<span></span>
</td>
<td class="nump">68,185<span></span>
</td>
<td class="nump">70,911<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-Lived Assets</a></td>
<td class="nump">34,277<span></span>
</td>
<td class="nump">29,131<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=srt_EuropeMember', window );">Europe [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">31,021<span></span>
</td>
<td class="nump">31,922<span></span>
</td>
<td class="nump">29,029<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-Lived Assets</a></td>
<td class="nump">1,230<span></span>
</td>
<td class="nump">1,486<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=srt_AsiaMember', window );">Asia [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">5,345<span></span>
</td>
<td class="nump">5,926<span></span>
</td>
<td class="nump">5,105<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-Lived Assets</a></td>
<td class="nump">9<span></span>
</td>
<td class="nump">15<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CA', window );">Canada [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">8,393<span></span>
</td>
<td class="nump">6,519<span></span>
</td>
<td class="nump">5,574<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-Lived Assets</a></td>
<td class="nump">4<span></span>
</td>
<td class="nump">9<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=alot_CentralAndSouthAmericaMember', window );">Central and South America [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">4,589<span></span>
</td>
<td class="nump">3,271<span></span>
</td>
<td class="nump">3,950<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=alot_OtherCountriesMember', window );">Other [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 1,262<span></span>
</td>
<td class="nump">$ 1,657<span></span>
</td>
<td class="nump">$ 1,464<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-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 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130543-203045<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 https://asc.fasb.org/extlink&amp;oid=126901519&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-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 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<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 https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_EuropeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_EuropeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_AsiaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_AsiaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_CA">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CA</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=alot_CentralAndSouthAmericaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=alot_CentralAndSouthAmericaMember</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=alot_OtherCountriesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=alot_OtherCountriesMember</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>109
<FILENAME>R97.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229828313056">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefit Plans - Additional Information (Detail) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_PostemploymentBenefitsAbstract', window );"><strong>Postemployment Benefits [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount', window );">Contributions paid or accrued amounted</a></td>
<td class="nump">$ 0.5<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
<td class="nump">$ 0.4<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_DefinedContributionPlanEmployerDiscretionaryContributionAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of discretionary contributions made by an employer to a defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_PostemploymentBenefitsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PostemploymentBenefitsAbstract</td>
</tr>
<tr>
<td style="padding-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>110
<FILENAME>R98.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823238176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Product Warranty Liability - Activity in Product Warranty Liability (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_ProductWarrantiesDisclosuresAbstract', window );"><strong>Product Warranties Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualClassifiedCurrent', window );">Balance, beginning of the year</a></td>
<td class="nump">$ 834<span></span>
</td>
<td class="nump">$ 730<span></span>
</td>
<td class="nump">$ 850<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualWarrantiesIssued', window );">Provision for Warranty Expense</a></td>
<td class="nump">2,077<span></span>
</td>
<td class="nump">2,174<span></span>
</td>
<td class="nump">855<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualPayments', window );">Cost of Warranty Repairs</a></td>
<td class="num">(1,839)<span></span>
</td>
<td class="num">(2,070)<span></span>
</td>
<td class="num">(975)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualClassifiedCurrent', window );">Balance, end of the year</a></td>
<td class="nump">$ 1,072<span></span>
</td>
<td class="nump">$ 834<span></span>
</td>
<td class="nump">$ 730<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_ProductWarrantiesDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantiesDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-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_ProductWarrantyAccrualClassifiedCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12524-110249<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 https://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 460<br> -SubTopic 10<br> -Section 25<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126907644&amp;loc=d3e11281-110244<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualClassifiedCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrualPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph ((c)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProductWarrantyAccrualWarrantiesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in the standard and extended product warranty accrual from warranties issued.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph ((c)(3))<br> -URI https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualWarrantiesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>111
<FILENAME>R99.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229908057072">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Product Warranty Liability - Additional Information (Detail)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantiesDisclosuresAbstract', window );"><strong>Product Warranties Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_alot_Reimbursementreceivedfromvendor', window );">Reimbursement received from vendor</a></td>
<td class="nump">$ 975,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_alot_Reimbursementreceivedfromvendor">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Reimbursement received from vendor</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">alot_Reimbursementreceivedfromvendor</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>alot_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProductWarrantiesDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantiesDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-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>112
<FILENAME>R100.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229823268416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Concentration of Risk - Additional Information (Detail) - Vendor [Member] - Customer [Member]<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_SupplierConcentrationRiskMember', window );">Purchases [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration Risk, Percentage</a></td>
<td class="nump">18.70%<span></span>
</td>
<td class="nump">23.30%<span></span>
</td>
<td class="nump">23.20%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_SupplierConcentrationRiskMember', window );">Trade Accounts Payables [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration Risk, Percentage</a></td>
<td class="nump">16.20%<span></span>
</td>
<td class="nump">15.40%<span></span>
</td>
<td class="nump">28.30%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskLineItems</td>
</tr>
<tr>
<td style="padding-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_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SupplierConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_SupplierConcentrationRiskMember</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_CostOfGoodsTotalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_CostOfGoodsTotalMember</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=alot_CustomerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=alot_CustomerMember</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=alot_TradeAccountsPayablesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=alot_TradeAccountsPayablesMember</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>113
<FILENAME>R101.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229827313856">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Commitments and Contingencies - Additional Information (Detail)<br> $ in Millions</strong></div></th>
<th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract', window );"><strong>Operating Leases, Future Minimum Payments Due, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligation', window );">Purchase obligation</a></td>
<td class="nump">$ 25.8<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInNextTwelveMonths', window );">Purchase obligation, to be paid, year one</a></td>
<td class="nump">$ 22.8<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_OperatingLeasesFutureMinimumPaymentsDueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract</td>
</tr>
<tr>
<td style="padding-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_PurchaseObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Minimum amount of purchase arrangement in which the entity has agreed to expend funds to procure goods or services from a supplier.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PurchaseObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PurchaseObligationDueInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of purchase arrangement to be paid in next fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PurchaseObligationDueInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>114
<FILENAME>R102.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229828819824">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value Measurements - Schedule of Company's Long-Term Debt Including the Current Portion Not Reflected in Financial Statements at Fair Value (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByMeasurementBasisAxis=us-gaap_EstimateOfFairValueFairValueDisclosureMember', window );">Fair Value [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtLongtermAndShorttermCombinedAmount', window );">Long-Term Debt and Related Current Maturities</a></td>
<td class="nump">$ 14,310<span></span>
</td>
<td class="nump">$ 9,255<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByMeasurementBasisAxis=us-gaap_EstimateOfFairValueFairValueDisclosureMember', window );">Fair Value [Member] | Level 3 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtLongtermAndShorttermCombinedAmount', window );">Long-Term Debt and Related Current Maturities</a></td>
<td class="nump">14,310<span></span>
</td>
<td class="nump">9,255<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByMeasurementBasisAxis=us-gaap_CarryingReportedAmountFairValueDisclosureMember', window );">Carrying Value [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtLongtermAndShorttermCombinedAmount', window );">Long-Term Debt and Related Current Maturities</a></td>
<td class="nump">$ 14,250<span></span>
</td>
<td class="nump">$ 9,250<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_DebtLongtermAndShorttermCombinedAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the aggregate of total long-term debt, including current maturities and short-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtLongtermAndShorttermCombinedAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems</td>
</tr>
<tr>
<td style="padding-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_FairValueByMeasurementBasisAxis=us-gaap_EstimateOfFairValueFairValueDisclosureMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByMeasurementBasisAxis=us-gaap_EstimateOfFairValueFairValueDisclosureMember</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</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_FairValueByMeasurementBasisAxis=us-gaap_CarryingReportedAmountFairValueDisclosureMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByMeasurementBasisAxis=us-gaap_CarryingReportedAmountFairValueDisclosureMember</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>115
<FILENAME>R103.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.1</span><table class="report" border="0" cellspacing="2" id="idm140229828807536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule II - Valuation and Qualifying Accounts and Reserves (Detail) - Allowance for Doubtful Accounts [Member] - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_srt_ValuationAndQualifyingAccountsDisclosureLineItems', window );"><strong>SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [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="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Balance at Beginning of Year</a></td>
<td class="nump">$ 826<span></span>
</td>
<td class="nump">$ 1,054<span></span>
</td>
<td class="nump">$ 856<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense', window );">Provision/(Benefit) Charged to Operations</a></td>
<td class="nump">100<span></span>
</td>
<td class="nump">50<span></span>
</td>
<td class="nump">194<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesDeductions', window );">Deductions</a></td>
<td class="num">(195)<span></span>
</td>
<td class="num">(278)<span></span>
</td>
<td class="nump">4<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Balance at End of Year</a></td>
<td class="nump">$ 731<span></span>
</td>
<td class="nump">$ 826<span></span>
</td>
<td class="nump">$ 1,054<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ValuationAndQualifyingAccountsDisclosureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ValuationAndQualifyingAccountsDisclosureLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>srt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_ValuationAllowancesAndReservesBalance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of valuation and qualifying accounts and reserves.</p></div>
<a href="javascript:void(0);" onclick="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 S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09(Column B))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24092-122690<br><br>Reference 2: 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 4<br> -Subparagraph (SX 210.12-09(Column E))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24092-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesBalance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ValuationAllowancesAndReservesChargedToCostAndExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in valuation and qualifying accounts and reserves from charge to cost and expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09(Column C)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24092-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ValuationAllowancesAndReservesDeductions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in valuation and qualifying accounts and reserves.</p></div>
<a href="javascript:void(0);" onclick="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 S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09(Column D))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24092-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesDeductions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ValuationAllowancesAndReservesTypeAxis=us-gaap_AllowanceForCreditLossMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_AllowanceForCreditLossMember</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>116
<FILENAME>d415415d10k_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:alot="http://astro-med.com/20230131"
  xmlns:country="http://xbrl.sec.gov/country/2022"
  xmlns:dei="http://xbrl.sec.gov/dei/2022"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2022"
  xmlns:stpr="http://xbrl.sec.gov/stpr/2022"
  xmlns:us-gaap="http://fasb.org/us-gaap/2022"
  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="alot-20230131.xsd" xlink:type="simple"/>
    <context id="P02_01_2022To01_31_2023">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="PAsOn01_31_2022">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="PAsOn08_04_2022">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <instant>2022-08-04</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2021">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="P08_04_2022To08_04_2022">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <startDate>2022-08-04</startDate>
            <endDate>2022-08-04</endDate>
        </period>
    </context>
    <context id="PAsOn07_30_2022">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <instant>2022-07-30</instant>
        </period>
    </context>
    <context id="PAsOn04_12_2023">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <instant>2023-04-12</instant>
        </period>
    </context>
    <context id="PAsOn10_30_2021">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <instant>2021-10-30</instant>
        </period>
    </context>
    <context id="PAsOn03_22_2022">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <instant>2022-03-22</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2020">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_OthersCountriesMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alot:OthersCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CentralAndSouthAmericaMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alot:CentralAndSouthAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_AsiaMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CAsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_EuropeMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_USsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_ServiceAndOtherMembersrtProductOrServiceAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alot:ServiceAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_SuppliesMembersrtProductOrServiceAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alot:SuppliesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_HardwareProductsMembersrtProductOrServiceAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alot:HardwareProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alot:RangeThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alot:RangeFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alot:RangeFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:ProductIdentificationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:TestAndMeasurementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_OtherCountriesMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alot:OtherCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">alot:CustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_TradeAccountsPayablesMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">alot:CustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">alot:TradeAccountsPayablesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CorporateNonSegmentMembersrtConsolidationItemsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_LandImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_BuildingAndLeaseholdImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">alot:BuildingAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_LandImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_BuildingAndLeaseholdImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">alot:BuildingAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_MachineryAndEquipmentMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</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>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_ComputerEquipmentAndSoftwareMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">alot:ComputerEquipmentAndSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_MachineryAndEquipmentMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</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>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_ComputerEquipmentAndSoftwareMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">alot:ComputerEquipmentAndSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_AirborneProductMembersrtProductOrServiceAxis_MinimumMembersrtRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alot:AirborneProductMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_AirborneProductMembersrtProductOrServiceAxis_MaximumMembersrtRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alot:AirborneProductMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_TreasuryStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_ForeignExchangeMemberusgaapTradingActivityByTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TradingActivityByTypeAxis">us-gaap:ForeignExchangeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_RestrictedStockUnitsRSUMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_EmployeeStockPurchasePlanMemberusgaapPlanNameAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alot:EmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CNsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMemberusgaapPlanNameAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alot:TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_PriorEmployeeStockPurchasePlanMemberusgaapPlanNameAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alot:PriorEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_RestrictedStockAwardMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alot:RestrictedStockAwardMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CrossCurrencyInterestRateContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">alot:CashFlowHedgeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_OtherExpenseMemberusgaapIncomeStatementLocationAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherExpenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_MinimumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_MaximumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alot:GreenwoodCreditUnionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_LondonInterbankOfferedRateLIBORMemberusgaapVariableRateAxis_MinimumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_LondonInterbankOfferedRateLIBORMemberusgaapVariableRateAxis_MaximumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_FederalFundsEffectiveSwapRateMemberusgaapVariableRateAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:FederalFundsEffectiveSwapRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_LondonInterbankOfferedRateLIBORMemberusgaapVariableRateAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis_PromissoryNoteMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alot:PromissoryNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:GreenwoodCreditUnionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ChangeInAccountingEstimateByTypeAxis">us-gaap:IntangibleAssetsAmortizationPeriodMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_PrepaidExpensesAndOtherCurrentAssetsMemberusgaapBalanceSheetLocationAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ChangeInAccountingEstimateByTypeAxis">us-gaap:IntangibleAssetsAmortizationPeriodMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:RuggedInformationTechnologyEquipmentCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:RuggedInformationTechnologyEquipmentCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ChangeInAccountingEstimateByTypeAxis">us-gaap:IntangibleAssetsAmortizationPeriodMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_SellingAndMarketingExpenseMemberusgaapIncomeStatementLocationAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:GreenwoodCreditUnionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:CreditAgreementAxis">alot:SecondAmendmentCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_DomesticCountryMemberusgaapIncomeTaxAuthorityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_AerospaceCustomerMembersrtMajorCustomersAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">alot:AerospaceCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2022To01_31_2023_CustomerRelatedIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:TrojanlabelApSMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">alot:DistributorRelationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:TrojanlabelApSMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">alot:ExistingTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:RuggedInformationTechnologyEquipmentCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:MiltopeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_TermLoanDueAugustFourthTwoThousandAndTwentySevenMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:TermLoanDueAugustFourthTwoThousandAndTwentySevenMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:ProductIdentificationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:TestAndMeasurementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_CorporateNonSegmentMembersrtConsolidationItemsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis_FairValueInputsLevel3MemberusgaapFairValueByFairValueHierarchyLevelAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis">us-gaap:EstimateOfFairValueFairValueDisclosureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis">us-gaap:EstimateOfFairValueFairValueDisclosureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_CarryingReportedAmountFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis">us-gaap:CarryingReportedAmountFairValueDisclosureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_USsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_EuropeMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_CAsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_AsiaMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:TestAndMeasurementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:ProductIdentificationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MaximumMembersrtRangeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</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>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_BeforeAmendmentToTheCreditAgreementMemberALOTDetailsAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:DetailsAxis">alot:BeforeAmendmentToTheCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:TrojanlabelApSMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">alot:DistributorRelationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:TrojanlabelApSMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">alot:ExistingTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:RuggedInformationTechnologyEquipmentCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:MiltopeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_TermLoanDueAugustFourthTwoThousandAndTwentySevenMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:TermLoanDueAugustFourthTwoThousandAndTwentySevenMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_BeforeAmendmentToTheCreditAgreementMemberALOTDetailsAxis_TermLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:DetailsAxis">alot:BeforeAmendmentToTheCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alot:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:ProductIdentificationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:TestAndMeasurementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_CorporateNonSegmentMembersrtConsolidationItemsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis_FairValueInputsLevel3MemberusgaapFairValueByFairValueHierarchyLevelAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis">us-gaap:EstimateOfFairValueFairValueDisclosureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis">us-gaap:EstimateOfFairValueFairValueDisclosureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_CarryingReportedAmountFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis">us-gaap:CarryingReportedAmountFairValueDisclosureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_TwoThousandSevenEquityIncentivePlanMemberusgaapPlanNameAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alot:TwoThousandSevenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RestrictedStockMemberusgaapAwardTypeAxis_TwoThousandFifteenEquityIncentivePlanMemberusgaapPlanNameAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alot:TwoThousandFifteenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_USsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_EuropeMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_CAsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_AsiaMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alot:RangeThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alot:RangeFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">alot:RangeFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:ProductIdentificationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:TestAndMeasurementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MaximumMembersrtRangeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</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>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_CNsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_DEsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">stpr:DE</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RestrictedStockUnitsRSUMemberusgaapAwardTypeAxis_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alot:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_PerformanceSharesMemberusgaapAwardTypeAxis_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alot:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RestrictedStockMemberusgaapAwardTypeAxis_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alot:TwoThousandEighteenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_EmployeeStockOptionMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RestrictedStockUnitsRSUMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_TaxCreditsCarryForwardsMemberALOTDetailsOfIncomeTaxBenefitAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:DetailsOfIncomeTaxBenefitAxis">alot:TaxCreditsCarryForwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMemberusgaapPlanNameAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alot:TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alot:GreenwoodCreditUnionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:CreditAgreementAxis">alot:SecondAmendmentCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_DomesticCountryMemberusgaapIncomeTaxAuthorityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_AdditionalForeignTaxCreditMemberALOTDetailsOfIncomeTaxBenefitAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:DetailsOfIncomeTaxBenefitAxis">alot:AdditionalForeignTaxCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_MeasurementInputRoyaltyRateMemberusgaapMeasurementInputTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">alot:MeasurementInputRoyaltyRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_MeasurementInputCustomerAttritionRateMemberusgaapMeasurementInputTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">alot:MeasurementInputCustomerAttritionRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_MeasurementInputDiscountRateMemberusgaapMeasurementInputTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputDiscountRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_CustomerRelatedIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_NonCurrentLiabilityMemberusgaapBalanceSheetLocationAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">alot:NonCurrentLiabilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RoyaltyPaymentsDueInNextTwelveMonthsMemberALOTRoyaltyPaymentsDueAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:RoyaltyPaymentsDueAxis">alot:RoyaltyPaymentsDueInNextTwelveMonthsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RoyaltyPaymentsDueYearTwoMemberALOTRoyaltyPaymentsDueAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:RoyaltyPaymentsDueAxis">alot:RoyaltyPaymentsDueYearTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RoyaltyPaymentsDueYearThreeMemberALOTRoyaltyPaymentsDueAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:RoyaltyPaymentsDueAxis">alot:RoyaltyPaymentsDueYearThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RoyaltyPaymentsDueYearFiveMemberALOTRoyaltyPaymentsDueAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:RoyaltyPaymentsDueAxis">alot:RoyaltyPaymentsDueYearFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RoyaltyPaymentsDueYearFourMemberALOTRoyaltyPaymentsDueAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:RoyaltyPaymentsDueAxis">alot:RoyaltyPaymentsDueYearFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_OthersCountriesMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alot:OthersCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_CentralAndSouthAmericaMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alot:CentralAndSouthAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_AsiaMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_CAsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_EuropeMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_USsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_ServiceAndOtherMembersrtProductOrServiceAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alot:ServiceAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_SuppliesMembersrtProductOrServiceAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alot:SuppliesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_HardwareProductsMembersrtProductOrServiceAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alot:HardwareProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:ProductIdentificationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:TestAndMeasurementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_OtherCountriesMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alot:OtherCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">alot:CustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_TradeAccountsPayablesMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">alot:CustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">alot:TradeAccountsPayablesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_CorporateNonSegmentMembersrtConsolidationItemsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_TreasuryStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_ForeignExchangeMemberusgaapTradingActivityByTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TradingActivityByTypeAxis">us-gaap:ForeignExchangeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2020To01_31_2021_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_OthersCountriesMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alot:OthersCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_CentralAndSouthAmericaMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alot:CentralAndSouthAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_AsiaMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_CAsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_EuropeMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_USsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_ServiceAndOtherMembersrtProductOrServiceAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alot:ServiceAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_SuppliesMembersrtProductOrServiceAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alot:SuppliesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_HardwareProductsMembersrtProductOrServiceAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">alot:HardwareProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:ProductIdentificationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:TestAndMeasurementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_OtherCountriesMembersrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">alot:OtherCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">alot:CustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_TradeAccountsPayablesMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">alot:CustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">alot:TradeAccountsPayablesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_CorporateNonSegmentMembersrtConsolidationItemsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_TreasuryStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_ForeignExchangeMemberusgaapTradingActivityByTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TradingActivityByTypeAxis">us-gaap:ForeignExchangeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_PriorEmployeeStockPurchasePlanMemberusgaapPlanNameAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">alot:PriorEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CrossCurrencyInterestRateContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">alot:CashFlowHedgeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_OtherExpenseMemberusgaapIncomeStatementLocationAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherExpenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_NonoperatingIncomeExpenseMemberusgaapIncomeStatementLocationAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:NonoperatingIncomeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="P02_01_2021To01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="PAsOn05_06_2020_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alot:GreenwoodCreditUnionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-05-06</instant>
        </period>
    </context>
    <context id="PAsOn05_06_2020_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:GreenwoodCreditUnionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-05-06</instant>
        </period>
    </context>
    <context id="P06_15_2021To06_15_2021_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alot:GreenwoodCreditUnionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-06-15</startDate>
            <endDate>2021-06-15</endDate>
        </period>
    </context>
    <context id="P06_15_2021To06_15_2021_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:GreenwoodCreditUnionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-06-15</startDate>
            <endDate>2021-06-15</endDate>
        </period>
    </context>
    <context id="P08_04_2022To08_04_2022_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-08-04</startDate>
            <endDate>2022-08-04</endDate>
        </period>
    </context>
    <context id="P08_04_2022To08_04_2022_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-08-04</startDate>
            <endDate>2022-08-04</endDate>
        </period>
    </context>
    <context id="P08_04_2022To08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-08-04</startDate>
            <endDate>2022-08-04</endDate>
        </period>
    </context>
    <context id="P08_04_2022To08_04_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:CreditAgreementAxis">alot:SecondAmendmentCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-08-04</startDate>
            <endDate>2022-08-04</endDate>
        </period>
    </context>
    <context id="PAsOn08_04_2022_AdditionalTermLoanAvailedMemberALOTDetailsOneAxis_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis_TermLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="alot:CreditAgreementAxis">alot:SecondAmendmentCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="alot:DetailsOneAxis">alot:AdditionalTermLoanAvailedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-08-04</instant>
        </period>
    </context>
    <context id="PAsOn08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-08-04</instant>
        </period>
    </context>
    <context id="P08_04_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">alot:AgreementWithAstroMachineForAssetAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-08-04</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="P10_31_2022To07_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_TermLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-10-31</startDate>
            <endDate>2023-07-31</endDate>
        </period>
    </context>
    <context id="P10_31_2023To04_30_2027_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_TermLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">alot:BankOfAmericaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-10-31</startDate>
            <endDate>2027-04-30</endDate>
        </period>
    </context>
    <context id="P05_02_2021To07_31_2021_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">alot:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">alot:GreenwoodCreditUnionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-05-02</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="P08_01_2021To10_30_2021_CashFlowHedgingMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CrossCurrencyInterestRateContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-30</endDate>
        </period>
    </context>
    <context id="P08_01_2021To10_30_2021_CashFlowHedgingMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-30</endDate>
        </period>
    </context>
    <context id="P07_30_2020To07_30_2020_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CrossCurrencyInterestRateContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-07-30</startDate>
            <endDate>2020-07-30</endDate>
        </period>
    </context>
    <context id="P01_01_2021To06_30_2021_CaresActMemberusgaapUnusualOrInfrequentItemAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:UnusualOrInfrequentItemAxis">alot:CaresActMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="P07_01_2021To07_31_2021_CaresActMemberusgaapUnusualOrInfrequentItemAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:UnusualOrInfrequentItemAxis">alot:CaresActMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="P03_22_2022To03_22_2022_CaresActMemberusgaapUnusualOrInfrequentItemAxis_PrepaidExpensesAndOtherCurrentAssetsMemberusgaapBalanceSheetLocationAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:UnusualOrInfrequentItemAxis">alot:CaresActMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-03-22</startDate>
            <endDate>2022-03-22</endDate>
        </period>
    </context>
    <context id="P10_30_2021To10_30_2021_CostOfSalesMemberusgaapIncomeStatementLocationAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-10-30</startDate>
            <endDate>2021-10-30</endDate>
        </period>
    </context>
    <context id="P10_30_2021To10_30_2021_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-10-30</startDate>
            <endDate>2021-10-30</endDate>
        </period>
    </context>
    <context id="PAsOn01_31_2018_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-01-31</instant>
        </period>
    </context>
    <context id="P01_31_2018To01_31_2018_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">alot:HoneywellAssetPurchaseAndLicenseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-31</startDate>
            <endDate>2018-01-31</endDate>
        </period>
    </context>
    <context id="PAsOn01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:ProductIdentificationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">alot:TestAndMeasurementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2022_AerospaceCustomerMembersrtMajorCustomersAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">alot:AerospaceCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="P05_01_2021To07_31_2021_ChangeInAccountingMethodAccountedForAsChangeInEstimateMemberusgaapChangeInAccountingEstimateByTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ChangeInAccountingEstimateByTypeAxis">us-gaap:ChangeInAccountingMethodAccountedForAsChangeInEstimateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-05-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="PAsOn01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_TreasuryStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2023_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2020_TreasuryStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2020_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2020_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2020_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2020_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2021_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2021_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2021_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2021_TreasuryStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2021_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">alot:RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_TreasuryStockMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="PAsOn01_31_2022_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000008146</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <unit id="Unit_USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Unit_shares">
        <measure>shares</measure>
    </unit>
    <unit id="Unit_pure">
        <measure>pure</measure>
    </unit>
    <unit id="Unit_Year">
        <measure>utr:Year</measure>
    </unit>
    <unit id="Unit_sqft">
        <measure>utr:sqft</measure>
    </unit>
    <unit id="Unit_USD_per_Share">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="Unit_Segment">
        <measure>alot:Segment</measure>
    </unit>
    <dei:AmendmentFlag contextRef="P02_01_2022To01_31_2023">false</dei:AmendmentFlag>
    <dei:DocumentFiscalPeriodFocus contextRef="P02_01_2022To01_31_2023">FY</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey contextRef="P02_01_2022To01_31_2023">0000008146</dei:EntityCentralIndexKey>
    <dei:DocumentType contextRef="P02_01_2022To01_31_2023">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport contextRef="P02_01_2022To01_31_2023">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate contextRef="P02_01_2022To01_31_2023">2023-01-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate contextRef="P02_01_2022To01_31_2023">--01-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus contextRef="P02_01_2022To01_31_2023">2023</dei:DocumentFiscalYearFocus>
    <dei:DocumentTransitionReport contextRef="P02_01_2022To01_31_2023">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="P02_01_2022To01_31_2023">0-13200</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="P02_01_2022To01_31_2023">AstroNova, Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="P02_01_2022To01_31_2023">RI</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="P02_01_2022To01_31_2023">05-0318215</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="P02_01_2022To01_31_2023">600 East Greenwich Avenue</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="P02_01_2022To01_31_2023">West Warwick</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="P02_01_2022To01_31_2023">RI</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="P02_01_2022To01_31_2023">02893</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="P02_01_2022To01_31_2023">401</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="P02_01_2022To01_31_2023">828-4000</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="P02_01_2022To01_31_2023">Common Stock</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="P02_01_2022To01_31_2023">ALOT</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="P02_01_2022To01_31_2023">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer contextRef="P02_01_2022To01_31_2023">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers contextRef="P02_01_2022To01_31_2023">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus contextRef="P02_01_2022To01_31_2023">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="P02_01_2022To01_31_2023">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="P02_01_2022To01_31_2023">Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="P02_01_2022To01_31_2023">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="P02_01_2022To01_31_2023">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag contextRef="P02_01_2022To01_31_2023">true</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany contextRef="P02_01_2022To01_31_2023">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="PAsOn07_30_2022"
      decimals="0"
      unitRef="Unit_USD">84333000</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="PAsOn04_12_2023"
      decimals="INF"
      unitRef="Unit_shares">7400560</dei:EntityCommonStockSharesOutstanding>
    <dei:AuditorFirmId contextRef="P02_01_2022To01_31_2023">392</dei:AuditorFirmId>
    <dei:AuditorName contextRef="P02_01_2022To01_31_2023">Wolf &amp; Company, P.C.</dei:AuditorName>
    <dei:AuditorLocation contextRef="P02_01_2022To01_31_2023">Boston, MA</dei:AuditorLocation>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList contextRef="PAsOn01_31_2023" id="hidden75771655">http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList contextRef="PAsOn01_31_2022" id="hidden75771656">http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">3946000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">5276000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">731000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">826000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">21598000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">17124000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">51324000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">34609000</us-gaap:InventoryNet>
    <alot:ErcReceivables
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</alot:ErcReceivables>
    <alot:ErcReceivables
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">3135000</alot:ErcReceivables>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2894000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">3634000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">79762000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">63778000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">14288000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">11441000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">21232000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">19200000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:Goodwill
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">14658000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">12156000</us-gaap:Goodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">6907000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">5591000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">794000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1094000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OtherAssetsMiscellaneousNoncurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1566000</us-gaap:OtherAssetsMiscellaneousNoncurrent>
    <us-gaap:OtherAssetsMiscellaneousNoncurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1695000</us-gaap:OtherAssetsMiscellaneousNoncurrent>
    <us-gaap:Assets
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">139207000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">114955000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">8618000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">8590000</us-gaap:AccountsPayableCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2750000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">3512000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">3308000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">4113000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">15900000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2100000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1000000</us-gaap:LongTermDebtCurrent>
    <alot:RoyaltyObligationCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1725000</alot:RoyaltyObligationCurrent>
    <alot:RoyaltyObligationCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">2000000</alot:RoyaltyObligationCurrent>
    <alot:AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">423000</alot:AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue>
    <alot:AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">235000</alot:AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">786000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">323000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1888000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">262000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">37498000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">20035000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">12040000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">8154000</us-gaap:LongTermDebtNoncurrent>
    <alot:RoyaltyObligationNonCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">3415000</alot:RoyaltyObligationNonCurrent>
    <alot:RoyaltyObligationNonCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">4361000</alot:RoyaltyObligationNonCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">555000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">808000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:TaxesPayableCurrentAndNoncurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">491000</us-gaap:TaxesPayableCurrentAndNoncurrent>
    <us-gaap:TaxesPayableCurrentAndNoncurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">399000</us-gaap:TaxesPayableCurrentAndNoncurrent>
    <us-gaap:DeferredRevenueNoncurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">674000</us-gaap:DeferredRevenueNoncurrent>
    <us-gaap:DeferredRevenueNoncurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:DeferredRevenueNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">167000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">186000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:Liabilities
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">54840000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">33943000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="PAsOn01_31_2023"
      unitRef="Unit_USD"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="PAsOn01_31_2022"
      unitRef="Unit_USD"
      xsi:nil="true"/>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="PAsOn01_31_2023"
      decimals="INF"
      unitRef="Unit_USD_per_Share">10</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="PAsOn01_31_2022"
      decimals="INF"
      unitRef="Unit_USD_per_Share">10</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="PAsOn01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">100000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="PAsOn01_31_2022"
      decimals="INF"
      unitRef="Unit_shares">100000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="PAsOn01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="PAsOn01_31_2022"
      decimals="INF"
      unitRef="Unit_shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockValue
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="PAsOn01_31_2023"
      decimals="INF"
      unitRef="Unit_USD_per_Share">0.05</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="PAsOn01_31_2022"
      decimals="INF"
      unitRef="Unit_USD_per_Share">0.05</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="PAsOn01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">13000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="PAsOn01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">10676851</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="PAsOn01_31_2022"
      decimals="INF"
      unitRef="Unit_shares">10566404</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">534000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">528000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">61131000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">59692000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">59175000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">56514000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:TreasuryStockShares
      contextRef="PAsOn01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">3342032</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="PAsOn01_31_2022"
      decimals="INF"
      unitRef="Unit_shares">3324280</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockValue
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">34235000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">33974000</us-gaap:TreasuryStockValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-2238000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-1748000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">84367000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">81012000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">139207000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">114955000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">142527000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">117480000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">116033000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfRevenue
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">94371000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">73741000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">74673000</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">48156000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">43739000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">41360000</us-gaap:GrossProfit>
    <us-gaap:SellingAndMarketingExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">24456000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">23177000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">23301000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">6822000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">6753000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">6206000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">11435000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">9553000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">9420000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:OperatingExpenses
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">42713000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">39483000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">38927000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">5443000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">4256000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">2433000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1678000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">677000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">955000</us-gaap:InterestExpense>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-474000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-288000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">590000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">4466000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-696000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">119000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-27000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">111000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-2033000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">2778000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-254000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">3410000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">7034000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">2179000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">749000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">605000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">895000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2661000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">6429000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1284000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="P02_01_2022To01_31_2023"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.36</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="P02_01_2021To01_31_2022"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.89</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="P02_01_2020To01_31_2021"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.18</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="P02_01_2022To01_31_2023"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.36</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="P02_01_2021To01_31_2022"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.88</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="P02_01_2020To01_31_2021"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.18</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_shares">7307000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_shares">7207000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_shares">7104000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_shares">67000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_shares">132000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_shares">62000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_shares">7374000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_shares">7339000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_shares">7166000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2661000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">6429000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1284000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-537000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-1426000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">710000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-239000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-47000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-62000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-193000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax>
    <us-gaap:OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax>
    <us-gaap:OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax>
    <us-gaap:OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">45000</us-gaap:OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-490000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-1364000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">709000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2171000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">5065000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1993000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="PAsOn01_31_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="INF"
      unitRef="Unit_shares">10343610</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">517000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">56130000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">49298000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2020_TreasuryStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-33477000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-1093000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2020"
      decimals="-3"
      unitRef="Unit_USD">71375000</us-gaap:StockholdersEquity>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="P02_01_2020To01_31_2021_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1819000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1819000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="P02_01_2020To01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="INF"
      unitRef="Unit_shares">16487</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="P02_01_2020To01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="P02_01_2020To01_31_2021_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">103000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="P02_01_2020To01_31_2021_TreasuryStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">104000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="P02_01_2020To01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="INF"
      unitRef="Unit_shares">64997</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="P02_01_2020To01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">3000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="P02_01_2020To01_31_2021_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-3000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="P02_01_2020To01_31_2021_TreasuryStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-111000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-111000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="P02_01_2020To01_31_2021"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.07</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCommonStockCash
      contextRef="P02_01_2020To01_31_2021_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">497000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">497000</us-gaap:DividendsCommonStockCash>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2020To01_31_2021_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1284000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1284000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2020To01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">709000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">709000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="PAsOn01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="INF"
      unitRef="Unit_shares">10425094</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2021_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">521000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2021_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">58049000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2021_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">50085000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2021_TreasuryStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-33588000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-384000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">74683000</us-gaap:StockholdersEquity>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="P02_01_2021To01_31_2022_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1493000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1493000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="P02_01_2021To01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="INF"
      unitRef="Unit_shares">14371</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="P02_01_2021To01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="P02_01_2021To01_31_2022_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">156000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">157000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="P02_01_2021To01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="INF"
      unitRef="Unit_shares">126939</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="P02_01_2021To01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">6000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="P02_01_2021To01_31_2022_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-6000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="P02_01_2021To01_31_2022_TreasuryStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-386000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-386000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2021To01_31_2022_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">6429000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">6429000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2021To01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-1364000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-1364000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="PAsOn01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="INF"
      unitRef="Unit_shares">10566404</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2022_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">528000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2022_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">59692000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2022_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">56514000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2022_TreasuryStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-33974000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-1748000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">81012000</us-gaap:StockholdersEquity>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="P02_01_2022To01_31_2023_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1290000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1290000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="P02_01_2022To01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="INF"
      unitRef="Unit_shares">25123</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="P02_01_2022To01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">2000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="P02_01_2022To01_31_2023_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">153000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">155000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="P02_01_2022To01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="INF"
      unitRef="Unit_shares">85324</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="P02_01_2022To01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">4000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="P02_01_2022To01_31_2023_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-4000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="P02_01_2022To01_31_2023_TreasuryStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-261000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-261000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2022To01_31_2023_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">2661000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2661000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2022To01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-490000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-490000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="PAsOn01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="INF"
      unitRef="Unit_shares">10676851</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2023_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">534000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2023_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">61131000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2023_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">59175000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2023_TreasuryStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-34235000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-2238000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">84367000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2661000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">6429000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1284000</us-gaap:ProfitLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">3916000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">3994000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">5983000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">25000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">44000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">75000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:ShareBasedCompensation
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1290000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1493000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1819000</us-gaap:ShareBasedCompensation>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-696000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">4466000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-1336000</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">210000</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-1021000</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1234000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-77000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-2702000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <alot:OtherEmployeeRetentionCreditReceivable
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-3135000</alot:OtherEmployeeRetentionCreditReceivable>
    <alot:OtherEmployeeRetentionCreditReceivable
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">3135000</alot:OtherEmployeeRetentionCreditReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">11581000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">4883000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-4247000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-3236000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">4052000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-57000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1710000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-2043000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1482000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-1714000</us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet>
    <us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1074000</us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet>
    <us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">970000</us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-2936000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1394000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">15544000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">17034000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">229000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1796000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">2587000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-17263000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-1796000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-2587000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">85000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">60000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">9000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:ProceedsFromStockPlans
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">70000</us-gaap:ProceedsFromStockPlans>
    <us-gaap:ProceedsFromStockPlans
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">96000</us-gaap:ProceedsFromStockPlans>
    <us-gaap:ProceedsFromStockPlans
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">95000</us-gaap:ProceedsFromStockPlans>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">261000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">386000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">111000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">15900000</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-6500000</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <alot:PaymentsOfMinimumGuaranteeRoyaltyObligation
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2000000</alot:PaymentsOfMinimumGuaranteeRoyaltyObligation>
    <alot:PaymentsOfMinimumGuaranteeRoyaltyObligation
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">2000000</alot:PaymentsOfMinimumGuaranteeRoyaltyObligation>
    <alot:PaymentsOfMinimumGuaranteeRoyaltyObligation
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">2000000</alot:PaymentsOfMinimumGuaranteeRoyaltyObligation>
    <alot:ProceedsFromIssuanceOfPaycheckProtectionProgramLoan
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">4422000</alot:ProceedsFromIssuanceOfPaycheckProtectionProgramLoan>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">6000000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">10000000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">15232000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:RepaymentsOfOtherLongTermDebt
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">12576000</us-gaap:RepaymentsOfOtherLongTermDebt>
    <us-gaap:RepaymentsOfOtherLongTermDebt
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">11732000</us-gaap:RepaymentsOfOtherLongTermDebt>
    <us-gaap:RepaymentsOfMediumTermNotes
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1000000</us-gaap:RepaymentsOfMediumTermNotes>
    <us-gaap:RepaymentsOfMediumTermNotes
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">750000</us-gaap:RepaymentsOfMediumTermNotes>
    <us-gaap:RepaymentsOfMediumTermNotes
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">3958000</us-gaap:RepaymentsOfMediumTermNotes>
    <us-gaap:PaymentsOfDebtIssuanceCosts
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">39000</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:PaymentsOfDebtIssuanceCosts
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">100000</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">497000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">18755000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-5556000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-5140000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">114000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-205000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-627000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-1330000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-6163000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">7190000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">5276000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="PAsOn01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">11439000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="PAsOn01_31_2020"
      decimals="-3"
      unitRef="Unit_USD">4249000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">3946000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">5276000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="PAsOn01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">11439000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:InterestPaidNet
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">791000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">342000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">677000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">311000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">2414000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">446000</us-gaap:IncomeTaxesPaidNet>
    <alot:ReclassifcationOfInventoriesToPropertyPlantAndEquipment
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">348000</alot:ReclassifcationOfInventoriesToPropertyPlantAndEquipment>
    <alot:RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">530000</alot:RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement>
    <us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 12pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 1&#x2014;Summary of Significant Accounting Policies &lt;/div&gt;&lt;/div&gt;  &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Basis of Presentation:&lt;/div&gt;&lt;/div&gt; The accompanying financial statements and accompanying notes have been prepared by us pursuant to the rules and regulations of the U.S. Securities and Exchange Commission (&#x201c;SEC&#x201d;) and are presented in conformity with U.S. generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;). Our fiscal year end is January&#160;31. Unless otherwise stated, all years and dates refer to our fiscal year. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Principles of Consolidation: &lt;/div&gt;&lt;/div&gt;The consolidated financial statements include the accounts of AstroNova, Inc. and its subsidiaries. All material intercompany accounts and transactions are eliminated in consolidation. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Reclassification: &lt;/div&gt;&lt;/div&gt;Certain amounts in prior year&#x2019;s financial statements have been reclassified to conform to the current year&#x2019;s presentation. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Use of Estimates: &lt;/div&gt;&lt;/div&gt;The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect these financial statements and accompanying notes using information that is reasonably available to us at this time. Some of the more significant estimates relate to revenue recognition; the allowances for doubtful accounts; inventory valuation; income taxes; valuation of long-lived assets, intangible assets and goodwill; share-based compensation; and warranty reserves. Management&#x2019;s estimates are based on the facts and circumstances available at the time estimates are made, historical experience, risk of loss, general economic conditions and trends, and management&#x2019;s assessments of the probable future outcome of these matters, including our expectations at the time&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt; regarding&lt;/div&gt; the ongoing impact from the &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;COVID-19&lt;/div&gt; pandemic. Consequently, actual results could differ from those estimates. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Cash and Cash Equivalents:&lt;/div&gt;&lt;/div&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt; &lt;/div&gt;&lt;/div&gt;Highly liquid investments with an original maturity of 90 days or less are considered to be cash equivalents. At&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt; January&lt;/div&gt;&#160;31, 2023 and 2022, $3.2&#160;million and $3.7&#160;million, respectively, was held in foreign bank accounts. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Inventories:&lt;/div&gt;&lt;/div&gt; Inventories are stated at the lower of standard and average cost or net realizable value and include material, labor and manufacturing overhead. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Property, Plant and Equipment: &lt;/div&gt;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;Property&lt;/div&gt;, plant and equipment are stated at cost less accumulated depreciation. Depreciation is provided on the straight-line basis over the estimated useful lives of the assets (land improvements&#x2014;10 to 20 years; buildings and leasehold improvements&#x2014;10 to 45 years; machinery and equipment&#x2014;3 to 10 years and &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;computer&lt;/div&gt; equipment and software&#x2014;3 to 10 years). &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Revenue Recognition: &lt;/div&gt;&lt;/div&gt;We recognize revenue in accordance with Accounting Standards Codification (&#x201c;ASC&#x201d;) 606 &#x201c;Revenue from Contracts with Customers (&#x201c;ASC 606&#x201d;).&#x201d;&#160;The core principle of ASC&#160;606 is to recognize revenue when promised goods or services are transferred to customers in an amount that reflects the consideration that is expected to be received for those goods or services. ASC&#160;606 defines a five-step process to recognize revenue and requires judgment and estimates within the revenue recognition process, including identifying contracts with customers, identifying performance obligations in the contract, determining and estimating the amount of any variable consideration to include in the transaction price and allocating the transaction price to each separate performance obligation and recognizing revenue when the entity satisfies each performance obligation. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The vast majority of our revenue is generated from the sale of distinct products. Revenue is measured as the amount of consideration we expect to receive in exchange for such products, which is generally at the contractually stated prices, and is recognized when we satisfy a performance obligation by transferring control of &lt;/div&gt; &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;a product to a customer. The transfer of control generally occurs at one point in time, upon shipment, when title and risk of loss pass to the customer. Returns and customer credits are infrequent and are recorded as a reduction to revenue. Sales taxes and value added taxes collected concurrently with revenue generating activities are excluded from revenue. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Many of the contracts entered into with customers are commonly comprised of a combination of equipment, supplies, installation and/or training services. We determine performance obligations by assessing whether the products or services are distinct from other elements of the contract. In order to be distinct, the product must perform either on its own or with readily available resources and must be separate within the context of the contract. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Most of our hardware products contain embedded operating systems and data management software which is included in the purchase price of the equipment. The software is deemed incidental to the systems as a whole, as it is not sold or marketed separately, and its production costs are minor compared to those of the hardware system. Hardware and software elements are typically delivered at the same time and are accounted for as a single performance obligation for which revenue is recognized at the point in time when ownership is transferred to the customer. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Installation and training services vary based on certain factors such as the complexity of the equipment, staffing availability in a geographic location and customer preferences, and can range from a few days to a few months. The delivery of installation and training services are not assessed to determine whether they are separate performance obligations, as the amounts are not material to the contract. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Shipping and handling activities that occur after control over a product has transferred to a customer are accounted for as fulfillment activities rather than performance obligations, as allowed under a practical expedient provided by ASC 606. The shipping and handling fees charged to customers are recognized as revenue and the related costs are included in cost of revenue at the point in time when ownership of the product is transferred to the customer. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We may perform services at the request of the customer, generally for the repair and maintenance of products previously sold. These services are short in duration and total approximately 5.0% and 4.4% of revenue for the years ended January&#160;31, 2023 and 2022, respectively. Revenue is recognized as services are rendered and accepted by the customer. We also provide service agreements on certain of our Product Identification equipment. Service agreements are purchased separately from the equipment and provide for the right to obtain service and maintenance on the equipment for a period of typically one to two years. Accordingly, revenue on these agreements is recognized over the term of the agreements.&#160;The portion of service agreement contracts that are uncompleted at the end of any reporting period are included in deferred revenue. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We generally provide warranties for our products. The standard warranty period is typically 12 months for most hardware products except for airborne printers, which typically have warranties that extend for &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;3-5&lt;/div&gt; years, consistent with industry practice. Such assurance-type warranties are not deemed to be separate performance obligations from the hardware product and costs associated with providing the warranties are accrued in accordance with ASC 450, &#x201c;Contingencies,&#x201d; as we have the ability to ascertain the likelihood of the liability and can reasonably estimate the amount of the liability. Our estimate of costs to service the warranty obligations is based on historical experience and expectations of future conditions. To the extent that our experience in warranty claims or costs associated with servicing those claims differ from the original estimates, revisions to the estimated warranty liability are recorded at that time, with an offsetting adjustment to cost of revenue.&#160;On occasion, customers request a warranty period longer than our standard warranty. In those instances, in which extended warranty services are separately quoted to the customer, an additional performance obligation is created, and the associated revenue is deferred and recognized as service revenue ratably over the term of the extended warranty period. The portion of service contracts and extended warranty services agreements that are uncompleted at the end of any reporting period are included in deferred revenue. &lt;/div&gt;&lt;div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt"&gt;&#160;&lt;/div&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We recognize and subsequently amortize an asset for the incremental direct costs of obtaining a contract with a customer if we expect the benefit of those costs to be longer than one year (Refer to Note 3, &#x201c;Revenue Recognition&#x201d; included in our notes to the consolidated financial statement). We apply the practical expedient to expense costs incurred for costs to obtain a contract when the amortization period would have been less than a year. These costs include sales commissions paid to the internal direct sales team as well as to third-party representatives and distributors.&#160;Contractual agreements with each of these parties outline commission structures and rates to be paid.&#160;Generally speaking, the contracts are all individual procurement decisions by the customers and do not include renewal provisions and, as such, the majority of the contracts have an economic life of significantly less than a year.&lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Accounts Receivables and Allowance for Doubtful Accounts: &lt;/div&gt;&lt;/div&gt;Standard payment terms are typically 30&#160;days after shipment but vary by type and geographic location of our customer. Credit is extended based upon an evaluation of the customer&#x2019;s financial condition. In circumstances where we are aware of a customer&#x2019;s inability to meet its financial obligations, an allowance is established. The remainder of the allowance established is based on a variety of factors, including the age of amounts outstanding relative to their contractual due date, historical &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;write-off&lt;/div&gt; experience and current market assessments. Accounts receivable are stated at their estimated net realizable value. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Business Combinations: &lt;/div&gt;We account for business acquisitions under the acquisition method of accounting in accordance with&#160;ASC 805, &#x2018;&#x2018;Business Combinations,&#x2019;&#x2019; where the total purchase price is allocated to the tangible and identified intangible assets acquired and liabilities assumed based on their estimated fair values. The purchase price is allocated using the information currently available, and may be adjusted, up to one year from acquisition date, after obtaining more information regarding, among other things, asset valuations, liabilities assumed and revisions to preliminary estimates. The purchase price in excess of the fair value of the tangible and identified intangible assets acquired less liabilities assumed is recognized as goodwill. Determining the fair value of assets acquired and liabilities assumed requires management to use significant judgment and estimates, including the selection of valuation methodologies, estimates of future revenue, costs and cash flows, discount rates, and selection of comparable companies. Management&#x2019;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and unpredictable. As a result, actual results may differ from these estimates. During the measurement period, we may record adjustments to acquired assets and assumed liabilities, with corresponding offsets to goodwill. Upon the conclusion of a measurement period, any subsequent adjustments are recorded to earnings. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;At the acquisition date, the Company measures the fair values of all assets acquired and liabilities assumed that arise from contractual contingencies. The Company also measures the fair values of all &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-contractual&lt;/div&gt; contingencies if, as of the acquisitions date, it is more likely than not that the contingencies will give rise to assets or liabilities. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;Acquisition related costs not considered part of the considerations are expensed as incurred and recorded in Acquisition costs within the consolidated statement of operations. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&lt;div style="display:inline;"&gt;Research&lt;/div&gt; and Development Costs: &lt;/div&gt;&lt;/div&gt;We charge costs to expense in the period incurred, and these expenses are presented in the consolidated statement of income. The following costs are included in research and development expense: salaries and benefits, external engineering service costs, engineering related information costs and supplies. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Foreign Currency Translation: &lt;/div&gt;&lt;/div&gt;The financial statements of foreign subsidiaries and branches are measured using the local currency as the functional currency. Foreign currency-denominated assets and liabilities are translated into U.S. dollars at &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;year-end&lt;/div&gt; exchange rates with the translation adjustment recorded as a component of accumulated comprehensive income (loss) in shareholders&#x2019; equity. Revenues and expenses are translated at the average monthly exchange rates in effect during the related period. We do not provide for U.S. income taxes on foreign currency translation adjustments associated with our subsidiaries in Germany, Denmark and China since &lt;/div&gt;&lt;div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt"&gt;&#160;&lt;/div&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;their undistributed earnings are considered to be permanently invested. Included in our consolidated statements of income was a net transaction foreign exchange loss of $0.5&#160;million and $0.3&#160;million in fiscal 2022 and 2023, respectively, and a net transaction foreign exchange gain of $0.6&#160;million in fiscal 2021. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Advertising: &lt;/div&gt;&lt;/div&gt;We expense advertising costs as incurred. Advertising costs including advertising production, trade shows and other activities are designed to enhance demand for our products and amounted to approximately $1.6&#160;million, $1.3&#160;million, and $0.9&#160;million in fiscal years 2023, 2022, and 2021, respectively. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Long-Lived Assets: &lt;/div&gt;&lt;/div&gt;Long-lived assets to be held and used are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of such assets may not be recoverable. Determination of recoverability is based on an estimate of undiscounted future cash flows resulting from the use of the asset and its eventual disposition. If the projected undiscounted cash flows are less than the carrying value, then an impairment charge would be recorded for the excess of the carrying value over the fair value, as determined by the discounting of future cash flows. There were no impairment charges for our long-lived assets in fiscal years 2023, 2022, or 2021. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Intangible Assets: &lt;/div&gt;&lt;/div&gt;Intangible assets include the value of customer and distributor relationships, trademarks and existing technology acquired in connection with business and asset acquisitions and are stated at cost (fair value at acquisition) less accumulated amortization. These intangible assets have a definite life and are amortized over the assets&#x2019; useful lives using a systematic and rational basis which is representative of the assets&#x2019; use. Intangible assets with a definite life are tested for impairment whenever events or circumstances indicate that the carrying amount of an asset (asset group) may not be recoverable. If necessary, an impairment loss is recognized when the carrying amount of an asset exceeds the estimated undiscounted cash flows used in determining the fair value of the asset. The amount of the impairment loss recorded is calculated by the excess of the asset&#x2019;s carrying value over its fair value. Fair value is generally determined using a discounted cash flow analysis. There were no impairment charges for our intangible assets in fiscal years 2023, 2022, or 2021. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Goodwill: &lt;/div&gt;&lt;/div&gt;Goodwill represents the excess of the aggregate purchase price over the fair value of the net assets acquired in a purchase business combination. Management evaluates the recoverability of goodwill annually or more frequently if events or changes in circumstances, such as declines in revenue, earnings or cash flows, or material adverse changes in the business climate indicate that the carrying value of an asset might be impaired. Goodwill is tested for impairment at the reporting unit level. A reporting unit is an operating segment, or a business unit one level below an operating segment if discrete financial information for that business is prepared and regularly reviewed by segment management. However, components within an operating segment are aggregated as a single reporting unit if they have similar economic characteristics. We determined that each of our operating segments (Product Identification (&#x201c;PI&#x201d;) and Test&#160;&amp;amp; Measurement (&#x201c;T&amp;amp;M&#x201d;) represents a reporting unit for purposes of&#160;goodwill impairment testing. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The accounting guidance related to&#160;goodwill impairment testing allows for the performance of an optional qualitative assessment of whether it is more likely than not that the fair value of a reporting unit is less than its carrying value. Factors that management considers in this qualitative assessment include macroeconomic conditions, industry and market considerations, overall financial performance (both current and projected), changes in management and strategy and changes in the composition or carrying amount of net assets. If this qualitative assessment indicates that it is more likely than not that the fair value of a reporting unit is less than its carrying value, then a quantitative assessment is required for the reporting unit. Additionally, we can elect to forgo the qualitative assessment and perform the quantitative test. The quantitative assessment compares the fair value of the reporting unit with its carrying value. If the quantitative assessment is performed, we estimate the fair value of our reporting units using a blended income and market approach. The income approach is based on a discounted cash flow model and provides a fair value estimate based upon the reporting unit&#x2019;s expected long-term operating cash flow performance. The market approach compares the reporting unit to publicly traded companies and transactions involving similar business, and requires the use of many assumptions and estimates including future revenue, expenses, capital expenditures, and working capital, as well as discount factors and &lt;/div&gt;&lt;div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt"&gt;&#160;&lt;/div&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/&gt; &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;income tax rates. If the fair value of the reporting unit exceeds the carrying value of the net assets including&#160;goodwill&#160;assigned to that unit,&#160;goodwill&#160;is not impaired. If the carrying value of the reporting unit&#x2019;s net assets including&#160;goodwill&#160;exceeds the fair value of the reporting unit, then we record an impairment charge based on that difference. We performed a qualitative assessment for our fiscal 2023 analysis of goodwill. Based on this assessment, management does not believe that it is more likely than not that the carrying values of the reporting units exceed their fair values. Accordingly, no quantitative assessment was performed. There were no impairment charges for our goodwill in fiscal years 2023, 2022, or 2021.&lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Leases: &lt;/div&gt;&lt;/div&gt;We account for our leases in accordance with ASC 842, &#x201c;Leases&#x201d; (&#x201c;ASC 842&#x201d;). ASC 842 requires a lessee to recognize assets and liabilities on the balance sheet for all leases, with the result being the recognition of a right of use (&#x201c;ROU&#x201d;) asset and a lease liability. The lease liability is equal to the present value of the minimum lease payments for the term of the lease, including any optional renewal periods determined to be reasonably certain to be exercised, using a discount rate determined at lease commencement. This discount rate is the rate implicit in the lease, if known; otherwise, the incremental borrowing rate for the expected lease term is used. Our incremental borrowing rate approximates the rate we would have to pay to borrow on a collateralized basis over a similar term at lease inception. The value of the ROU asset is equal to the initial measurement of the lease liability plus any lease payments made to the lessor at or before the commencement date and any unamortized initial direct costs incurred by the lessee, less any unamortized lease incentives received. Several of our lease contracts include options to extend the lease term and we include the renewal options for these leases in the determination of the ROU asset and lease liability when the likelihood of renewal is determined to be reasonably certain. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We enter into lease contracts for certain of our facilities at various locations worldwide. At inception of a contract, we determine whether the contract is or contains a lease. If we have a right to obtain substantially all of the economic benefits from the use of the identified asset and the right to direct the use of the asset, then the contract contains a lease. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;There are two types of leases, operating leases and finance leases. Lease classification is determined at lease commencement. We have made an accounting policy election to apply the short-term exception, which does not require the capitalization of leases with terms of 12 months or less. All of our leases are classified as operating leases. Operating lease expense is recognized on a straight-line basis over the lease term and included in general and administrative expense on the consolidated statement of income. ROU assets are classified as such on the consolidated balance sheet, short-term lease liabilities are classified in accrued expenses, and long-term lease liabilities are classified as such in the consolidated balance sheet. In the statement of cash flow, payments for operating leases are classified as operating activities. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;In addition, several of our lease agreements include &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-lease&lt;/div&gt; components for items such as common area maintenance and utilities which are accounted for separately from the lease component. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Income Taxes: &lt;/div&gt;&lt;/div&gt;We use the liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are determined based on the differences between the financial reporting basis and tax basis of the assets and liabilities and are measured using statutory tax rates that will be in effect when the differences are expected to reverse. Our deferred taxes are presented as &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-current&lt;/div&gt; in the accompanying consolidated balance sheet. An allowance against deferred tax assets is recognized when it is &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;more-likely-than-not&lt;/div&gt; that some portion or all of the deferred tax assets will not be realized. At January&#160;31, 2023, a valuation allowance was provided for deferred tax assets attributable to certain domestic R&amp;amp;D, foreign tax credit carryforwards and China net operating losses, all of which are expected to expire unused. At January&#160;31, 2022, a valuation allowance was provided for deferred tax assets attributed to certain domestic R&amp;amp;D and foreign tax credit carryforwards. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We account for uncertain tax positions in accordance with the guidance provided in ASC 740, &#x201c;Accounting for Income Taxes.&#x201d; This guidance describes a recognition threshold and measurement attribute for the financial statement disclosure of tax positions taken or expected to be taken in a tax return and requires recognition of tax &lt;/div&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;"&gt;&#160;&lt;/div&gt; &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/&gt;  &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;benefits that satisfy a &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;more-likely-than-not&lt;/div&gt; threshold. ASC 740 also provides guidance on &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;de-recognition,&lt;/div&gt; classification, interest and penalties, accounting in interim periods and disclosure. &lt;/div&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;On March&#160;27,&#160;2020,&#160;the Coronavirus Aid,&#160;Relief,&#160;and Economic Security Act (&#x201c;CARES Act&#x201d;)&#160;was signed into law. The&#160;legislation had sweeping effects including various types of economic relief for impacted businesses and industries. One&#160;such&#160;relief&#160;provision&#160;was&#160;the Paycheck Protection Program, which provided short-term cash flow assistance to finance employee payroll and qualified expenses. On May&#160;6, 2020, we entered into a loan agreement with, and executed a promissory note in favor of Greenwood Credit Union (&#x201c;Greenwood&#x201d;) pursuant to which we borrowed&lt;/div&gt;&lt;/div&gt;&#160;$4.4 &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;million (the &#x201c;PPP Loan&#x201d;). On December&#160;27, 2020, the Consolidated Appropriations Act, 2021, H.R. 133 was signed into law. The legislation permits the deductibility of expenses to the extent that the payment of such expenses results (or is expected to result) in the forgiveness of a loan (covered loan) guaranteed under the Paycheck Protection Program. We have fully utilized the PPP Loan proceeds for qualifying expenses and applied for forgiveness &lt;br/&gt;of the PPP Loan. Consistent with the legislation, we deducted the full&lt;/div&gt;&lt;/div&gt;&#160;$4.4 million of qualified expenses on our 2020 federal tax return. On June 15, 2021, Greenwood notified us that the United States Small Business Administration (the &#x201c;SBA&#x201d;) approved our application for forgiveness of the entire $4.4 million principal balance of our PPP Loan and all accrued interest thereon. As a result, in the second quarter of fiscal 2022, we recorded a&lt;br/&gt; $4.5 million gain on extinguishment of debt. The PPP loan forgiveness is excluded from taxable income under Section 1106(i) of the CARES Act. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Net Income Per Common Share: &lt;/div&gt;&lt;/div&gt;Basic net income per share is based on the weighted average number of shares outstanding during the period. Diluted net income per share is based on the basic weighted average number of shares and potential common equivalent shares for stock options, restricted stock awards and restricted stock units outstanding during the period using the treasury stock method. In fiscal years 2023, 2022, and 2021, there were 685,667; 345,085; and 642,623, respectively, common equivalent shares that were not included in the computation of diluted net income per common share because their inclusion would be anti-dilutive. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Fair Value Measurement: &lt;/div&gt;&lt;/div&gt;We measure our assets and liabilities at fair value on a recurring and &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-recurring&lt;/div&gt; basis in accordance with the guidance provided in ASC 820, &#x201c;Fair Value Measurement and Disclosures,&#x201d; which defines fair value as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. In addition, ASC 820 establishes a three-tiered hierarchy for inputs used in management&#x2019;s determination of fair value of financial instruments that emphasizes the use of observable inputs over the use of unobservable inputs by requiring that observable inputs be used when available. Observable inputs are inputs that reflect management&#x2019;s belief about the assumptions market participants would use in pricing a financial instrument based on the best information available in the circumstances. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The fair value hierarchy is summarized as follows: &lt;/div&gt; &lt;div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:5%"&gt;&#160;&lt;/td&gt;
&lt;td style="width:3%;vertical-align:top;text-align:left;"&gt;&#x2022;&lt;/td&gt;
&lt;td style="width:1%;vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; text-align: left; line-height: normal;"&gt;Level 1&#x2014;Quoted prices in active markets for identical assets or liabilities; &lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:5%"&gt;&#160;&lt;/td&gt;
&lt;td style="width:3%;vertical-align:top;text-align:left;"&gt;&#x2022;&lt;/td&gt;
&lt;td style="width:1%;vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; text-align: left; line-height: normal;"&gt;Level 2&#x2014;Inputs other than Level&#160;1 that are observable, either directly or indirectly, such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities; and &lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:5%"&gt;&#160;&lt;/td&gt;
&lt;td style="width:3%;vertical-align:top;text-align:left;"&gt;&#x2022;&lt;/td&gt;
&lt;td style="width:1%;vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; text-align: left; line-height: normal;"&gt;Level 3&#x2014;Unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities &lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Cash and cash equivalents, accounts receivable, accounts payable, accrued compensation, other accrued expenses and income tax payable are reflected in the consolidated balance sheet at carrying value, which approximates fair value due to the short-term nature of these instruments. &lt;/div&gt;  &lt;div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;"&gt;&#160;&lt;/div&gt; &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/&gt;  &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Self-Insurance:&lt;/div&gt;&lt;/div&gt; We are self-insured for U.S. medical and dental benefits for qualifying employees and maintain stop-loss coverage from a third party which limits our exposure to large claims. We record a liability associated with these benefits that includes an estimate of both claims filed and losses incurred but not yet reported based on historical claims experience. In estimating this accrual, we utilize an independent third-party broker to estimate a range of expected losses, which are based on analyses of historical data. Assumptions are closely monitored and adjusted when warranted by changing circumstances. Our liability for self-insured claims is included within accrued compensation in our consolidated balance sheets and was &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;$0.3&#160;million and $0.2&#160;million at January&#160;31, 2023 and 2022, respectively. &lt;/div&gt;  &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Share-Based Compensation:&lt;/div&gt;&lt;/div&gt; Compensation expense for time-based restricted stock units is measured at the grant date and recognized ratably over the vesting period. We determine the fair value of time-based and performance-based restricted stock units based on the closing market price of our common stock on the grant date. The recognition of compensation expense associated with performance-based restricted stock units requires judgment in assessing the probability of meeting the performance goals, as well as defined criteria for assessing achievement of the performance-related goals. For purposes of measuring compensation expense, the number of shares ultimately expected to vest is estimated at each reporting date based on management&#x2019;s expectations regarding the relevant performance criteria. The performance shares begin vesting only upon the achievement of the performance criteria. The achievement of the performance goals can impact the valuation and associated expense of the restricted stock units. The assumptions used in accounting for the share-based payment awards represent management&#x2019;s best estimates, but these estimates involve inherent uncertainties and the application of management judgment. As a result, if circumstances change and we use different assumptions, our stock-based compensation expense could be materially different in the future. &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Share-based compensation becomes deductible for determining income taxes when the related award vests, is exercised, or is forfeited depending on the type of share-based award and subject to relevant tax law. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Derivative Financial Instruments:&lt;/div&gt;&lt;/div&gt; We occasionally use derivative instruments as part of our overall strategy to manage exposure to market risks primarily associated with fluctuations in foreign currency exchange rates and interest rates. Derivative instruments are recognized as either assets or liabilities in the balance sheet at fair value. The accounting for changes in the fair value (i.e., gains or losses) of a derivative instrument depends on whether it has been designated and qualifies as part of a hedging relationship and, further, on the type of hedging relationship. For derivative instruments not designated as hedging instruments, the gain or loss is recognized in the statement of income during the current period. For those derivative instruments that are designated and qualify as hedging instruments, a company must designate the hedging instrument, based upon the exposure being hedged, as a fair value hedge, cash flow hedge, or a hedge of a net investment in a foreign operation. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;For derivative instruments that are designated and qualify as a cash flow hedge, the gain or loss on the derivative instrument is reported as a component of other comprehensive income/(loss) and reclassified into earnings in the same line item associated with the forecasted transaction, and in the same period or periods during which the hedged transaction affects earnings (e.g., in &#x201c;Interest Expense&#x201d; when the hedged transactions are interest cash flows associated with floating-rate debt, or &#x201c;Other, Net&#x201d; for portions reclassified relating to the remeasurement of the debt). The remaining gain or loss on the derivative instrument in excess of the cumulative change in the present value of future cash flows of the hedged item, if any, are recognized in the statement of income during the current period. &lt;/div&gt;  &lt;div style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Recent Accounting Pronouncements &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;There were no new accounting pronouncements, issued or effective during fiscal 2023, that have had or are expected to have a material impact on our consolidated financial statements. &lt;/div&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;"&gt;&#160;&lt;/div&gt; </us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Basis of Presentation:&lt;/div&gt;&lt;/div&gt; The accompanying financial statements and accompanying notes have been prepared by us pursuant to the rules and regulations of the U.S. Securities and Exchange Commission (&#x201c;SEC&#x201d;) and are presented in conformity with U.S. generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;). Our fiscal year end is January&#160;31. Unless otherwise stated, all years and dates refer to our fiscal year. &lt;/div&gt; </us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:ConsolidationPolicyTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Principles of Consolidation: &lt;/div&gt;&lt;/div&gt;The consolidated financial statements include the accounts of AstroNova, Inc. and its subsidiaries. All material intercompany accounts and transactions are eliminated in consolidation. &lt;/div&gt; </us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:PriorPeriodReclassificationAdjustmentDescription contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Reclassification: &lt;/div&gt;&lt;/div&gt;Certain amounts in prior year&#x2019;s financial statements have been reclassified to conform to the current year&#x2019;s presentation. &lt;/div&gt; </us-gaap:PriorPeriodReclassificationAdjustmentDescription>
    <us-gaap:UseOfEstimates contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Use of Estimates: &lt;/div&gt;&lt;/div&gt;The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect these financial statements and accompanying notes using information that is reasonably available to us at this time. Some of the more significant estimates relate to revenue recognition; the allowances for doubtful accounts; inventory valuation; income taxes; valuation of long-lived assets, intangible assets and goodwill; share-based compensation; and warranty reserves. Management&#x2019;s estimates are based on the facts and circumstances available at the time estimates are made, historical experience, risk of loss, general economic conditions and trends, and management&#x2019;s assessments of the probable future outcome of these matters, including our expectations at the time&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt; regarding&lt;/div&gt; the ongoing impact from the &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;COVID-19&lt;/div&gt; pandemic. Consequently, actual results could differ from those estimates. &lt;/div&gt; </us-gaap:UseOfEstimates>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Cash and Cash Equivalents:&lt;/div&gt;&lt;/div&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt; &lt;/div&gt;&lt;/div&gt;Highly liquid investments with an original maturity of 90 days or less are considered to be cash equivalents. At&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt; January&lt;/div&gt;&#160;31, 2023 and 2022, $3.2&#160;million and $3.7&#160;million, respectively, was held in foreign bank accounts. &lt;/div&gt; </us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <alot:CashEquivalentsMaturityPeriodDescription contextRef="P02_01_2022To01_31_2023">90</alot:CashEquivalentsMaturityPeriodDescription>
    <alot:CashHeldInForeignBankAccounts
      contextRef="PAsOn01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">3200000</alot:CashHeldInForeignBankAccounts>
    <alot:CashHeldInForeignBankAccounts
      contextRef="PAsOn01_31_2022"
      decimals="-5"
      unitRef="Unit_USD">3700000</alot:CashHeldInForeignBankAccounts>
    <us-gaap:InventoryPolicyTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Inventories:&lt;/div&gt;&lt;/div&gt; Inventories are stated at the lower of standard and average cost or net realizable value and include material, labor and manufacturing overhead. &lt;/div&gt; </us-gaap:InventoryPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Property, Plant and Equipment: &lt;/div&gt;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;Property&lt;/div&gt;, plant and equipment are stated at cost less accumulated depreciation. Depreciation is provided on the straight-line basis over the estimated useful lives of the assets (land improvements&#x2014;10 to 20 years; buildings and leasehold improvements&#x2014;10 to 45 years; machinery and equipment&#x2014;3 to 10 years and &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;computer&lt;/div&gt; equipment and software&#x2014;3 to 10 years). &lt;/div&gt; </us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="P02_01_2022To01_31_2023_LandImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="P02_01_2022To01_31_2023_LandImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis">P20Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="P02_01_2022To01_31_2023_BuildingAndLeaseholdImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="P02_01_2022To01_31_2023_BuildingAndLeaseholdImprovementsMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis">P45Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="P02_01_2022To01_31_2023_MachineryAndEquipmentMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="P02_01_2022To01_31_2023_MachineryAndEquipmentMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="P02_01_2022To01_31_2023_ComputerEquipmentAndSoftwareMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MinimumMembersrtRangeAxis">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="P02_01_2022To01_31_2023_ComputerEquipmentAndSoftwareMemberusgaapPropertyPlantAndEquipmentByTypeAxis_MaximumMembersrtRangeAxis">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:RevenueRecognitionPolicyTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Revenue Recognition: &lt;/div&gt;&lt;/div&gt;We recognize revenue in accordance with Accounting Standards Codification (&#x201c;ASC&#x201d;) 606 &#x201c;Revenue from Contracts with Customers (&#x201c;ASC 606&#x201d;).&#x201d;&#160;The core principle of ASC&#160;606 is to recognize revenue when promised goods or services are transferred to customers in an amount that reflects the consideration that is expected to be received for those goods or services. ASC&#160;606 defines a five-step process to recognize revenue and requires judgment and estimates within the revenue recognition process, including identifying contracts with customers, identifying performance obligations in the contract, determining and estimating the amount of any variable consideration to include in the transaction price and allocating the transaction price to each separate performance obligation and recognizing revenue when the entity satisfies each performance obligation. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The vast majority of our revenue is generated from the sale of distinct products. Revenue is measured as the amount of consideration we expect to receive in exchange for such products, which is generally at the contractually stated prices, and is recognized when we satisfy a performance obligation by transferring control of &lt;/div&gt;  &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;a product to a customer. The transfer of control generally occurs at one point in time, upon shipment, when title and risk of loss pass to the customer. Returns and customer credits are infrequent and are recorded as a reduction to revenue. Sales taxes and value added taxes collected concurrently with revenue generating activities are excluded from revenue. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Many of the contracts entered into with customers are commonly comprised of a combination of equipment, supplies, installation and/or training services. We determine performance obligations by assessing whether the products or services are distinct from other elements of the contract. In order to be distinct, the product must perform either on its own or with readily available resources and must be separate within the context of the contract. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Most of our hardware products contain embedded operating systems and data management software which is included in the purchase price of the equipment. The software is deemed incidental to the systems as a whole, as it is not sold or marketed separately, and its production costs are minor compared to those of the hardware system. Hardware and software elements are typically delivered at the same time and are accounted for as a single performance obligation for which revenue is recognized at the point in time when ownership is transferred to the customer. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Installation and training services vary based on certain factors such as the complexity of the equipment, staffing availability in a geographic location and customer preferences, and can range from a few days to a few months. The delivery of installation and training services are not assessed to determine whether they are separate performance obligations, as the amounts are not material to the contract. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Shipping and handling activities that occur after control over a product has transferred to a customer are accounted for as fulfillment activities rather than performance obligations, as allowed under a practical expedient provided by ASC 606. The shipping and handling fees charged to customers are recognized as revenue and the related costs are included in cost of revenue at the point in time when ownership of the product is transferred to the customer. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We may perform services at the request of the customer, generally for the repair and maintenance of products previously sold. These services are short in duration and total approximately 5.0% and 4.4% of revenue for the years ended January&#160;31, 2023 and 2022, respectively. Revenue is recognized as services are rendered and accepted by the customer. We also provide service agreements on certain of our Product Identification equipment. Service agreements are purchased separately from the equipment and provide for the right to obtain service and maintenance on the equipment for a period of typically one to two years. Accordingly, revenue on these agreements is recognized over the term of the agreements.&#160;The portion of service agreement contracts that are uncompleted at the end of any reporting period are included in deferred revenue. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We generally provide warranties for our products. The standard warranty period is typically 12 months for most hardware products except for airborne printers, which typically have warranties that extend for &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;3-5&lt;/div&gt; years, consistent with industry practice. Such assurance-type warranties are not deemed to be separate performance obligations from the hardware product and costs associated with providing the warranties are accrued in accordance with ASC 450, &#x201c;Contingencies,&#x201d; as we have the ability to ascertain the likelihood of the liability and can reasonably estimate the amount of the liability. Our estimate of costs to service the warranty obligations is based on historical experience and expectations of future conditions. To the extent that our experience in warranty claims or costs associated with servicing those claims differ from the original estimates, revisions to the estimated warranty liability are recorded at that time, with an offsetting adjustment to cost of revenue.&#160;On occasion, customers request a warranty period longer than our standard warranty. In those instances, in which extended warranty services are separately quoted to the customer, an additional performance obligation is created, and the associated revenue is deferred and recognized as service revenue ratably over the term of the extended warranty period. The portion of service contracts and extended warranty services agreements that are uncompleted at the end of any reporting period are included in deferred revenue. &lt;/div&gt;&lt;div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt"&gt;&#160;&lt;/div&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We recognize and subsequently amortize an asset for the incremental direct costs of obtaining a contract with a customer if we expect the benefit of those costs to be longer than one year (Refer to Note 3, &#x201c;Revenue Recognition&#x201d; included in our notes to the consolidated financial statement). We apply the practical expedient to expense costs incurred for costs to obtain a contract when the amortization period would have been less than a year. These costs include sales commissions paid to the internal direct sales team as well as to third-party representatives and distributors.&#160;Contractual agreements with each of these parties outline commission structures and rates to be paid.&#160;Generally speaking, the contracts are all individual procurement decisions by the customers and do not include renewal provisions and, as such, the majority of the contracts have an economic life of significantly less than a year.&lt;/div&gt;</us-gaap:RevenueRecognitionPolicyTextBlock>
    <alot:PercentageOfServiceRevenueToTotalRevenue
      contextRef="PAsOn01_31_2023_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MaximumMembersrtRangeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="3"
      unitRef="Unit_pure">0.05</alot:PercentageOfServiceRevenueToTotalRevenue>
    <alot:PercentageOfServiceRevenueToTotalRevenue
      contextRef="PAsOn01_31_2022_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MaximumMembersrtRangeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="3"
      unitRef="Unit_pure">0.044</alot:PercentageOfServiceRevenueToTotalRevenue>
    <alot:ProductsWarrantyPeriod contextRef="P02_01_2022To01_31_2023_AirborneProductMembersrtProductOrServiceAxis_MinimumMembersrtRangeAxis">P3Y</alot:ProductsWarrantyPeriod>
    <alot:ProductsWarrantyPeriod contextRef="P02_01_2022To01_31_2023_AirborneProductMembersrtProductOrServiceAxis_MaximumMembersrtRangeAxis">P5Y</alot:ProductsWarrantyPeriod>
    <us-gaap:ReceivablesPolicyTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Accounts Receivables and Allowance for Doubtful Accounts: &lt;/div&gt;&lt;/div&gt;Standard payment terms are typically 30&#160;days after shipment but vary by type and geographic location of our customer. Credit is extended based upon an evaluation of the customer&#x2019;s financial condition. In circumstances where we are aware of a customer&#x2019;s inability to meet its financial obligations, an allowance is established. The remainder of the allowance established is based on a variety of factors, including the age of amounts outstanding relative to their contractual due date, historical &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;write-off&lt;/div&gt; experience and current market assessments. Accounts receivable are stated at their estimated net realizable value. &lt;/div&gt;</us-gaap:ReceivablesPolicyTextBlock>
    <us-gaap:BusinessCombinationsPolicy contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Business Combinations: &lt;/div&gt;We account for business acquisitions under the acquisition method of accounting in accordance with&#160;ASC 805, &#x2018;&#x2018;Business Combinations,&#x2019;&#x2019; where the total purchase price is allocated to the tangible and identified intangible assets acquired and liabilities assumed based on their estimated fair values. The purchase price is allocated using the information currently available, and may be adjusted, up to one year from acquisition date, after obtaining more information regarding, among other things, asset valuations, liabilities assumed and revisions to preliminary estimates. The purchase price in excess of the fair value of the tangible and identified intangible assets acquired less liabilities assumed is recognized as goodwill. Determining the fair value of assets acquired and liabilities assumed requires management to use significant judgment and estimates, including the selection of valuation methodologies, estimates of future revenue, costs and cash flows, discount rates, and selection of comparable companies. Management&#x2019;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and unpredictable. As a result, actual results may differ from these estimates. During the measurement period, we may record adjustments to acquired assets and assumed liabilities, with corresponding offsets to goodwill. Upon the conclusion of a measurement period, any subsequent adjustments are recorded to earnings. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;At the acquisition date, the Company measures the fair values of all assets acquired and liabilities assumed that arise from contractual contingencies. The Company also measures the fair values of all &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-contractual&lt;/div&gt; contingencies if, as of the acquisitions date, it is more likely than not that the contingencies will give rise to assets or liabilities. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;Acquisition related costs not considered part of the considerations are expensed as incurred and recorded in Acquisition costs within the consolidated statement of operations. &lt;/div&gt;</us-gaap:BusinessCombinationsPolicy>
    <us-gaap:ResearchAndDevelopmentExpensePolicy contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&lt;div style="display:inline;"&gt;Research&lt;/div&gt; and Development Costs: &lt;/div&gt;&lt;/div&gt;We charge costs to expense in the period incurred, and these expenses are presented in the consolidated statement of income. The following costs are included in research and development expense: salaries and benefits, external engineering service costs, engineering related information costs and supplies. &lt;/div&gt;</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Foreign Currency Translation: &lt;/div&gt;&lt;/div&gt;The financial statements of foreign subsidiaries and branches are measured using the local currency as the functional currency. Foreign currency-denominated assets and liabilities are translated into U.S. dollars at &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;year-end&lt;/div&gt; exchange rates with the translation adjustment recorded as a component of accumulated comprehensive income (loss) in shareholders&#x2019; equity. Revenues and expenses are translated at the average monthly exchange rates in effect during the related period. We do not provide for U.S. income taxes on foreign currency translation adjustments associated with our subsidiaries in Germany, Denmark and China since &lt;/div&gt;&lt;div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt"&gt;&#160;&lt;/div&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;their undistributed earnings are considered to be permanently invested. Included in our consolidated statements of income was a net transaction foreign exchange loss of $0.5&#160;million and $0.3&#160;million in fiscal 2022 and 2023, respectively, and a net transaction foreign exchange gain of $0.6&#160;million in fiscal 2021. &lt;/div&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="P02_01_2021To01_31_2022_ForeignExchangeMemberusgaapTradingActivityByTypeAxis"
      decimals="-5"
      unitRef="Unit_USD">500000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="P02_01_2022To01_31_2023_ForeignExchangeMemberusgaapTradingActivityByTypeAxis"
      decimals="-5"
      unitRef="Unit_USD">300000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="P02_01_2020To01_31_2021_ForeignExchangeMemberusgaapTradingActivityByTypeAxis"
      decimals="-5"
      unitRef="Unit_USD">600000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:AdvertisingCostsPolicyTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Advertising: &lt;/div&gt;&lt;/div&gt;We expense advertising costs as incurred. Advertising costs including advertising production, trade shows and other activities are designed to enhance demand for our products and amounted to approximately $1.6&#160;million, $1.3&#160;million, and $0.9&#160;million in fiscal years 2023, 2022, and 2021, respectively. &lt;/div&gt;</us-gaap:AdvertisingCostsPolicyTextBlock>
    <us-gaap:AdvertisingExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">1600000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="P02_01_2021To01_31_2022"
      decimals="-5"
      unitRef="Unit_USD">1300000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="P02_01_2020To01_31_2021"
      decimals="-5"
      unitRef="Unit_USD">900000</us-gaap:AdvertisingExpense>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Long-Lived Assets: &lt;/div&gt;&lt;/div&gt;Long-lived assets to be held and used are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of such assets may not be recoverable. Determination of recoverability is based on an estimate of undiscounted future cash flows resulting from the use of the asset and its eventual disposition. If the projected undiscounted cash flows are less than the carrying value, then an impairment charge would be recorded for the excess of the carrying value over the fair value, as determined by the discounting of future cash flows. There were no impairment charges for our long-lived assets in fiscal years 2023, 2022, or 2021. &lt;/div&gt;</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsPolicy contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Intangible Assets: &lt;/div&gt;&lt;/div&gt;Intangible assets include the value of customer and distributor relationships, trademarks and existing technology acquired in connection with business and asset acquisitions and are stated at cost (fair value at acquisition) less accumulated amortization. These intangible assets have a definite life and are amortized over the assets&#x2019; useful lives using a systematic and rational basis which is representative of the assets&#x2019; use. Intangible assets with a definite life are tested for impairment whenever events or circumstances indicate that the carrying amount of an asset (asset group) may not be recoverable. If necessary, an impairment loss is recognized when the carrying amount of an asset exceeds the estimated undiscounted cash flows used in determining the fair value of the asset. The amount of the impairment loss recorded is calculated by the excess of the asset&#x2019;s carrying value over its fair value. Fair value is generally determined using a discounted cash flow analysis. There were no impairment charges for our intangible assets in fiscal years 2023, 2022, or 2021. &lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsPolicy>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Goodwill: &lt;/div&gt;&lt;/div&gt;Goodwill represents the excess of the aggregate purchase price over the fair value of the net assets acquired in a purchase business combination. Management evaluates the recoverability of goodwill annually or more frequently if events or changes in circumstances, such as declines in revenue, earnings or cash flows, or material adverse changes in the business climate indicate that the carrying value of an asset might be impaired. Goodwill is tested for impairment at the reporting unit level. A reporting unit is an operating segment, or a business unit one level below an operating segment if discrete financial information for that business is prepared and regularly reviewed by segment management. However, components within an operating segment are aggregated as a single reporting unit if they have similar economic characteristics. We determined that each of our operating segments (Product Identification (&#x201c;PI&#x201d;) and Test&#160;&amp;amp; Measurement (&#x201c;T&amp;amp;M&#x201d;) represents a reporting unit for purposes of&#160;goodwill impairment testing. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The accounting guidance related to&#160;goodwill impairment testing allows for the performance of an optional qualitative assessment of whether it is more likely than not that the fair value of a reporting unit is less than its carrying value. Factors that management considers in this qualitative assessment include macroeconomic conditions, industry and market considerations, overall financial performance (both current and projected), changes in management and strategy and changes in the composition or carrying amount of net assets. If this qualitative assessment indicates that it is more likely than not that the fair value of a reporting unit is less than its carrying value, then a quantitative assessment is required for the reporting unit. Additionally, we can elect to forgo the qualitative assessment and perform the quantitative test. The quantitative assessment compares the fair value of the reporting unit with its carrying value. If the quantitative assessment is performed, we estimate the fair value of our reporting units using a blended income and market approach. The income approach is based on a discounted cash flow model and provides a fair value estimate based upon the reporting unit&#x2019;s expected long-term operating cash flow performance. The market approach compares the reporting unit to publicly traded companies and transactions involving similar business, and requires the use of many assumptions and estimates including future revenue, expenses, capital expenditures, and working capital, as well as discount factors and &lt;/div&gt;&lt;div style="margin-top:0pt;margin-bottom:0pt ; font-size:8pt"&gt;&#160;&lt;/div&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/&gt; &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;income tax rates. If the fair value of the reporting unit exceeds the carrying value of the net assets including&#160;goodwill&#160;assigned to that unit,&#160;goodwill&#160;is not impaired. If the carrying value of the reporting unit&#x2019;s net assets including&#160;goodwill&#160;exceeds the fair value of the reporting unit, then we record an impairment charge based on that difference. We performed a qualitative assessment for our fiscal 2023 analysis of goodwill. Based on this assessment, management does not believe that it is more likely than not that the carrying values of the reporting units exceed their fair values. Accordingly, no quantitative assessment was performed. There were no impairment charges for our goodwill in fiscal years 2023, 2022, or 2021.&lt;/div&gt; </us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy>
    <us-gaap:LessorLeasesPolicyTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Leases: &lt;/div&gt;&lt;/div&gt;We account for our leases in accordance with ASC 842, &#x201c;Leases&#x201d; (&#x201c;ASC 842&#x201d;). ASC 842 requires a lessee to recognize assets and liabilities on the balance sheet for all leases, with the result being the recognition of a right of use (&#x201c;ROU&#x201d;) asset and a lease liability. The lease liability is equal to the present value of the minimum lease payments for the term of the lease, including any optional renewal periods determined to be reasonably certain to be exercised, using a discount rate determined at lease commencement. This discount rate is the rate implicit in the lease, if known; otherwise, the incremental borrowing rate for the expected lease term is used. Our incremental borrowing rate approximates the rate we would have to pay to borrow on a collateralized basis over a similar term at lease inception. The value of the ROU asset is equal to the initial measurement of the lease liability plus any lease payments made to the lessor at or before the commencement date and any unamortized initial direct costs incurred by the lessee, less any unamortized lease incentives received. Several of our lease contracts include options to extend the lease term and we include the renewal options for these leases in the determination of the ROU asset and lease liability when the likelihood of renewal is determined to be reasonably certain. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We enter into lease contracts for certain of our facilities at various locations worldwide. At inception of a contract, we determine whether the contract is or contains a lease. If we have a right to obtain substantially all of the economic benefits from the use of the identified asset and the right to direct the use of the asset, then the contract contains a lease. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;There are two types of leases, operating leases and finance leases. Lease classification is determined at lease commencement. We have made an accounting policy election to apply the short-term exception, which does not require the capitalization of leases with terms of 12 months or less. All of our leases are classified as operating leases. Operating lease expense is recognized on a straight-line basis over the lease term and included in general and administrative expense on the consolidated statement of income. ROU assets are classified as such on the consolidated balance sheet, short-term lease liabilities are classified in accrued expenses, and long-term lease liabilities are classified as such in the consolidated balance sheet. In the statement of cash flow, payments for operating leases are classified as operating activities. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;In addition, several of our lease agreements include &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-lease&lt;/div&gt; components for items such as common area maintenance and utilities which are accounted for separately from the lease component. &lt;/div&gt; </us-gaap:LessorLeasesPolicyTextBlock>
    <us-gaap:IncomeTaxPolicyTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Income Taxes: &lt;/div&gt;&lt;/div&gt;We use the liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are determined based on the differences between the financial reporting basis and tax basis of the assets and liabilities and are measured using statutory tax rates that will be in effect when the differences are expected to reverse. Our deferred taxes are presented as &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-current&lt;/div&gt; in the accompanying consolidated balance sheet. An allowance against deferred tax assets is recognized when it is &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;more-likely-than-not&lt;/div&gt; that some portion or all of the deferred tax assets will not be realized. At January&#160;31, 2023, a valuation allowance was provided for deferred tax assets attributable to certain domestic R&amp;amp;D, foreign tax credit carryforwards and China net operating losses, all of which are expected to expire unused. At January&#160;31, 2022, a valuation allowance was provided for deferred tax assets attributed to certain domestic R&amp;amp;D and foreign tax credit carryforwards. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We account for uncertain tax positions in accordance with the guidance provided in ASC 740, &#x201c;Accounting for Income Taxes.&#x201d; This guidance describes a recognition threshold and measurement attribute for the financial statement disclosure of tax positions taken or expected to be taken in a tax return and requires recognition of tax &lt;/div&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;"&gt;&#160;&lt;/div&gt; &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/&gt;    &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;benefits that satisfy a &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;more-likely-than-not&lt;/div&gt; threshold. ASC 740 also provides guidance on &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;de-recognition,&lt;/div&gt; classification, interest and penalties, accounting in interim periods and disclosure. &lt;/div&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;On March&#160;27,&#160;2020,&#160;the Coronavirus Aid,&#160;Relief,&#160;and Economic Security Act (&#x201c;CARES Act&#x201d;)&#160;was signed into law. The&#160;legislation had sweeping effects including various types of economic relief for impacted businesses and industries. One&#160;such&#160;relief&#160;provision&#160;was&#160;the Paycheck Protection Program, which provided short-term cash flow assistance to finance employee payroll and qualified expenses. On May&#160;6, 2020, we entered into a loan agreement with, and executed a promissory note in favor of Greenwood Credit Union (&#x201c;Greenwood&#x201d;) pursuant to which we borrowed&lt;/div&gt;&lt;/div&gt;&#160;$4.4 &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;million (the &#x201c;PPP Loan&#x201d;). On December&#160;27, 2020, the Consolidated Appropriations Act, 2021, H.R. 133 was signed into law. The legislation permits the deductibility of expenses to the extent that the payment of such expenses results (or is expected to result) in the forgiveness of a loan (covered loan) guaranteed under the Paycheck Protection Program. We have fully utilized the PPP Loan proceeds for qualifying expenses and applied for forgiveness &lt;br/&gt;of the PPP Loan. Consistent with the legislation, we deducted the full&lt;/div&gt;&lt;/div&gt;&#160;$4.4 million of qualified expenses on our 2020 federal tax return. On June 15, 2021, Greenwood notified us that the United States Small Business Administration (the &#x201c;SBA&#x201d;) approved our application for forgiveness of the entire $4.4 million principal balance of our PPP Loan and all accrued interest thereon. As a result, in the second quarter of fiscal 2022, we recorded a&lt;br/&gt; $4.5 million gain on extinguishment of debt. The PPP loan forgiveness is excluded from taxable income under Section 1106(i) of the CARES Act. &lt;/div&gt; </us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="PAsOn05_06_2020_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis"
      decimals="-5"
      unitRef="Unit_USD">4400000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:ProceedsFromLoans
      contextRef="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis_PromissoryNoteMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">4400000</us-gaap:ProceedsFromLoans>
    <us-gaap:DebtInstrumentDecreaseForgiveness
      contextRef="P06_15_2021To06_15_2021_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis"
      decimals="-5"
      unitRef="Unit_USD">4400000</us-gaap:DebtInstrumentDecreaseForgiveness>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapLineOfCreditFacilityAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis"
      decimals="-5"
      unitRef="Unit_USD">4500000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:EarningsPerSharePolicyTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Net Income Per Common Share: &lt;/div&gt;&lt;/div&gt;Basic net income per share is based on the weighted average number of shares outstanding during the period. Diluted net income per share is based on the basic weighted average number of shares and potential common equivalent shares for stock options, restricted stock awards and restricted stock units outstanding during the period using the treasury stock method. In fiscal years 2023, 2022, and 2021, there were 685,667; 345,085; and 642,623, respectively, common equivalent shares that were not included in the computation of diluted net income per common share because their inclusion would be anti-dilutive. &lt;/div&gt; </us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="P02_01_2022To01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">685667</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="P02_01_2021To01_31_2022"
      decimals="INF"
      unitRef="Unit_shares">345085</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="P02_01_2020To01_31_2021"
      decimals="INF"
      unitRef="Unit_shares">642623</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Fair Value Measurement: &lt;/div&gt;&lt;/div&gt;We measure our assets and liabilities at fair value on a recurring and &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-recurring&lt;/div&gt; basis in accordance with the guidance provided in ASC 820, &#x201c;Fair Value Measurement and Disclosures,&#x201d; which defines fair value as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. In addition, ASC 820 establishes a three-tiered hierarchy for inputs used in management&#x2019;s determination of fair value of financial instruments that emphasizes the use of observable inputs over the use of unobservable inputs by requiring that observable inputs be used when available. Observable inputs are inputs that reflect management&#x2019;s belief about the assumptions market participants would use in pricing a financial instrument based on the best information available in the circumstances. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The fair value hierarchy is summarized as follows: &lt;/div&gt; &lt;div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:5%"&gt;&#160;&lt;/td&gt;
&lt;td style="width:3%;vertical-align:top;text-align:left;"&gt;&#x2022;&lt;/td&gt;
&lt;td style="width:1%;vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; text-align: left; line-height: normal;"&gt;Level 1&#x2014;Quoted prices in active markets for identical assets or liabilities; &lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:5%"&gt;&#160;&lt;/td&gt;
&lt;td style="width:3%;vertical-align:top;text-align:left;"&gt;&#x2022;&lt;/td&gt;
&lt;td style="width:1%;vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; text-align: left; line-height: normal;"&gt;Level 2&#x2014;Inputs other than Level&#160;1 that are observable, either directly or indirectly, such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities; and &lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-size: 6pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:5%"&gt;&#160;&lt;/td&gt;
&lt;td style="width:3%;vertical-align:top;text-align:left;"&gt;&#x2022;&lt;/td&gt;
&lt;td style="width:1%;vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; text-align: left; line-height: normal;"&gt;Level 3&#x2014;Unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities &lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Cash and cash equivalents, accounts receivable, accounts payable, accrued compensation, other accrued expenses and income tax payable are reflected in the consolidated balance sheet at carrying value, which approximates fair value due to the short-term nature of these instruments. &lt;/div&gt; </us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:SelfInsuranceReservePolicyTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;"&gt;&#160;&lt;/div&gt; &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/&gt;   &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Self-Insurance:&lt;/div&gt;&lt;/div&gt; We are self-insured for U.S. medical and dental benefits for qualifying employees and maintain stop-loss coverage from a third party which limits our exposure to large claims. We record a liability associated with these benefits that includes an estimate of both claims filed and losses incurred but not yet reported based on historical claims experience. In estimating this accrual, we utilize an independent third-party broker to estimate a range of expected losses, which are based on analyses of historical data. Assumptions are closely monitored and adjusted when warranted by changing circumstances. Our liability for self-insured claims is included within accrued compensation in our consolidated balance sheets and was &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;$0.3&#160;million and $0.2&#160;million at January&#160;31, 2023 and 2022, respectively. &lt;/div&gt; </us-gaap:SelfInsuranceReservePolicyTextBlock>
    <us-gaap:AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense
      contextRef="PAsOn01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">300000</us-gaap:AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense>
    <us-gaap:AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense
      contextRef="PAsOn01_31_2022"
      decimals="-5"
      unitRef="Unit_USD">200000</us-gaap:AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy contextRef="P02_01_2022To01_31_2023"> &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Share-Based Compensation:&lt;/div&gt;&lt;/div&gt; Compensation expense for time-based restricted stock units is measured at the grant date and recognized ratably over the vesting period. We determine the fair value of time-based and performance-based restricted stock units based on the closing market price of our common stock on the grant date. The recognition of compensation expense associated with performance-based restricted stock units requires judgment in assessing the probability of meeting the performance goals, as well as defined criteria for assessing achievement of the performance-related goals. For purposes of measuring compensation expense, the number of shares ultimately expected to vest is estimated at each reporting date based on management&#x2019;s expectations regarding the relevant performance criteria. The performance shares begin vesting only upon the achievement of the performance criteria. The achievement of the performance goals can impact the valuation and associated expense of the restricted stock units. The assumptions used in accounting for the share-based payment awards represent management&#x2019;s best estimates, but these estimates involve inherent uncertainties and the application of management judgment. As a result, if circumstances change and we use different assumptions, our stock-based compensation expense could be materially different in the future. &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Share-based compensation becomes deductible for determining income taxes when the related award vests, is exercised, or is forfeited depending on the type of share-based award and subject to relevant tax law. &lt;/div&gt; </us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:DerivativesPolicyTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Derivative Financial Instruments:&lt;/div&gt;&lt;/div&gt; We occasionally use derivative instruments as part of our overall strategy to manage exposure to market risks primarily associated with fluctuations in foreign currency exchange rates and interest rates. Derivative instruments are recognized as either assets or liabilities in the balance sheet at fair value. The accounting for changes in the fair value (i.e., gains or losses) of a derivative instrument depends on whether it has been designated and qualifies as part of a hedging relationship and, further, on the type of hedging relationship. For derivative instruments not designated as hedging instruments, the gain or loss is recognized in the statement of income during the current period. For those derivative instruments that are designated and qualify as hedging instruments, a company must designate the hedging instrument, based upon the exposure being hedged, as a fair value hedge, cash flow hedge, or a hedge of a net investment in a foreign operation. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;For derivative instruments that are designated and qualify as a cash flow hedge, the gain or loss on the derivative instrument is reported as a component of other comprehensive income/(loss) and reclassified into earnings in the same line item associated with the forecasted transaction, and in the same period or periods during which the hedged transaction affects earnings (e.g., in &#x201c;Interest Expense&#x201d; when the hedged transactions are interest cash flows associated with floating-rate debt, or &#x201c;Other, Net&#x201d; for portions reclassified relating to the remeasurement of the debt). The remaining gain or loss on the derivative instrument in excess of the cumulative change in the present value of future cash flows of the hedged item, if any, are recognized in the statement of income during the current period. &lt;/div&gt; </us-gaap:DerivativesPolicyTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:18pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Recent Accounting Pronouncements &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;There were no new accounting pronouncements, issued or effective during fiscal 2023, that have had or are expected to have a material impact on our consolidated financial statements. &lt;/div&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;"&gt;&#160;&lt;/div&gt; </us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:BusinessCombinationDisclosureTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Note 2 &#x2013; Acquisitions &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Astro Machine &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;On August 4, 2022, we acquired Astro Machine LLC (&#x201c;Astro Machine&#x201d;), an Illinois-based manufacturer of printing equipment, including label printers, tabbers, conveyors, and envelope feeders, for aggregate consideration of $17.1 million. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The acquisition was accomplished pursuant to an Equity Interest Purchase Agreement dated as of August 4, 2022 (the &#x201c;Purchase Agreement&#x201d;) by and among us, GSND Holding Corporation (&#x201c;GSND&#x201d;), the parent company of Astro Machine, and Astro Machine. Pursuant to the Purchase Agreement, we purchased 100% of the issued and outstanding equity interests of Astro Machine from GSND for a purchase price of $15.6&#160;million. The acquisition was funded using borrowings under our credit facility. We obtained a representation and warranty insurance policy and placed $300,000 of the purchase price into an escrow account, which pursuant to the terms and conditions of the Purchase Agreement, are our sole recourse for breaches of representations and warranties by GSND. Upon the closing of the transaction, Astro Machine became a wholly owned subsidiary of AstroNova, Inc. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Concurrently with the signing of the Purchase Agreement, our newly acquired subsidiary, Astro Machine, entered into a Purchase and Sale Agreement with Selak Real Estate Limited Partnership (&#x201c;SRE&#x201d;), pursuant to which Astro Machine purchased certain real property assets of SRE for a purchase price, paid in cash, of $1.5&#160;million. These real estate assets are comprised of a 34,460 square foot industrial manufacturing building (including offices) on 1.26 acres of land, which is Astro Machine&#x2019;s principal place of business. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;This transaction is a business combination and was accounted for using the acquisition method of accounting prescribed by ASC 805, &#x201c;Business Combinations&#x201d; (&#x201c;ASC 805&#x201d;), whereby the results of operations, including the revenues and earnings of Astro Machine, are included in our financial statements from the date of acquisition. The purchase price of Astro Machine was allocated to the tangible and intangible assets acquired and liabilities assumed and recognized at their fair value based on widely accepted valuation techniques in accordance with ASC 820, &#x201c;Fair Value Measurement,&#x201d; as of the acquisition date. The process for estimating fair values requires the use of significant estimates, assumptions and judgments, including determining the timing and estimates of future cash flows and developing appropriate discount rates. The excess of the purchase price over the fair value of the net identified assets acquired and liabilities assumed was recorded as goodwill. ASC 805 establishes a measurement period to provide companies with a reasonable amount of time to obtain the information necessary to identify and measure various items in a business combination and cannot extend beyond one year from the acquisition date. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We completed our final fair value determination of the assets acquired and liabilities assumed during the fourth quarter of fiscal 2023. Since the initial preliminary estimates reported in the third quarter of fiscal 2023, we have adjusted certain amounts for the fair value of the assets acquired and liabilities assumed as a result of obtaining additional information that allowed us to determine the final purchase price allocation, as summarized in the table below. Measurement period adjustments were recognized in the reporting period in which the adjustments were determined and calculated as if the accounting had been completed at the acquisition date. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Total acquisition-related costs of $0.7&#160;million are included in the general and administrative expenses in our consolidated statement of income for the year ended January&#160;31, 2023.&lt;/div&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;"&gt;&#160;&lt;/div&gt; &lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;   &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following table sets forth the final purchase price allocation of the Astro Machine acquisition for the estimated fair value of the net asset acquired and liabilities assumed as of the date of acquisition: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:85%"/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr&gt;
&lt;td style="vertical-align: bottom; line-height: 8pt; font-size: 8pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="text-indent: 0px; line-height: 8pt; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;(In thousands)&lt;/div&gt;&lt;br/&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 8pt; font-size: 8pt;"&gt; &lt;div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"&gt; &lt;div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"&gt; &lt;div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"&gt; &lt;div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;Cash&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;91&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Accounts Receivable&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,393&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Inventory&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,715&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Property, Plant and Equipment&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,200&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Identifiable Intangible Assets&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,480&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Goodwill&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,730&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Accounts Payable and Other Current Liabilities&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,484&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total Purchase Price&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; border-bottom: 2.5pt double black;"&gt;$&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; border-bottom: 2.5pt double black;;text-align:right;"&gt;17,125&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="margin-top: 12pt; margin-bottom: 6pt; text-indent: 4%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt;"&gt;The fair value of the intangible assets acquired was estimated by applying the income approach. This fair value measurement is based on significant inputs that are not observable in the market and therefore represent a Level&#160;3 measurement as defined in ASC 820, &#x201c;Fair Value Measurement.&#x201d; Key assumptions in estimating the fair value of the intangibles include (1)&#160;remaining useful life of the tradename/trademarks and customer relations (2)&#160;the royalty rate of 0.75%, (3) customer attrition rate of 18.0%, (4) discount rate of 19.0% and (5)&#160;a range of revenue and net income projections for the fiscal years 2023-2026. &lt;/div&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following table sets forth the fair value of the acquired identifiable intangible assets and related estimated useful lives: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px; padding-top: 0pt; padding-bottom: 0pt;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 76%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:75%"/&gt;
&lt;td style="vertical-align:bottom;width:9%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:9%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="font-weight:bold;display:inline;width:100%;"&gt;Fair&lt;br/&gt; Value&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="font-weight:bold;display:inline;width:100%;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="font-weight:bold;display:inline;width:100%;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="font-weight:bold;display:inline;width:100%;"&gt;Useful&#160;Life&lt;br/&gt; (&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;y&lt;/div&gt;ears)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Customer Relations&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,060&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Trademarks/Tradenames&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;420&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Total&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,480&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="margin-top: 12pt; margin-bottom: 6pt; text-indent: 4%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt;"&gt;The Customer Relations intangible asset represents the relationships that will be maintained with certain historical customers of Astro Machine. The trademark/tradename intangible assets reflect the industry reputation of the Astro Machine name recognition and the registered trademarks for the use of several marks and logos held by Astro Machine. &lt;/div&gt;&lt;div style="margin-top: 12pt; margin-bottom: 6pt; text-indent: 4%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt;"&gt;Goodwill of $2.73&#160;million, which is not deductible for tax purposes, represents the excess of the purchase price over the estimated fair value assigned to the tangible and identifiable intangible assets acquired and liabilities assumed from Astro Machine. The goodwill recognized under ASC 805 is attributable to synergies which are expected to enhance and expand our overall product portfolio, opportunities in new and existing markets, future technologies that have yet to be determined and Astro Machine&#x2019;s assembled work force. The carrying amount of the goodwill was allocated to the Product Identification (&#x201c;PI&#x201d;) segment. &lt;/div&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The amounts of revenue and earnings before taxes included in our consolidated statement of income from the period August 4, 2022 (acquisition date) through January 31, 2023 are as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:85%"/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(In thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Revenue&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12,515&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Earnings before Taxes&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,571&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="background-color:#ffffff;;display:inline;"&gt;Astro Machine results are reported as part of the PI segment. Proforma results are not provided, as disclosure of such amounts was impractical to determine as the acquired business had insufficient financial records and no audit &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color:#ffffff;;display:inline;"&gt;history prior to the transaction.&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="background-color:#ffffff;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="background-color:#ffffff;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"&gt;&lt;a href="#toc"/&gt;&lt;/div&gt;&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Honeywell Asset Purchase and License Agreement&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;On June&#160;30, 2022, AstroNova Inc. entered into an Asset Purchase and License Agreement with Honeywell Inc. (&#x201c;New HW Agreement&#x201d;) to acquire an exclusive, perpetual, world-wide license to manufacture Honeywell&#x2019;s flight deck printers for the Boeing 787 aircraft.&#160;&#160;&#160;&#160;The New HW Agreement provides for royalty payments to Honeywell based on gross revenues from the sales of the printers, paper and repair services of the licensed products in perpetuity. The royalty rates vary based on the year in which they are paid or earned and as products are sold or as services provided and range from single-digit to &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;mid-double-digit&lt;/div&gt; percentages of gross revenue. The New HW Agreement included a provision for guaranteed minimum royalty payments to be paid in the event that the royalties earned by Honeywell do not meet the minimum for the preceding calendar year as follows: $100,000 in 2024, $200,000 in 2025, $233,000 in 2026 and 2027, and $234,000 in 2028.&lt;/div&gt;&lt;br/&gt;&lt;/div&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt;&lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;This transaction was evaluated under ASC 805, &#x201c;Business Combinations,&#x201d; and was accounted for as an asset acquisition. &lt;/div&gt;&lt;/div&gt;&lt;br/&gt;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The purchase price was allocated to the customer relationship intangible, which was the only asset acquired as a result of this transaction. This asset will be amortized over the useful life of the intangible. The minimum royalty payment obligation and related customer relation intangible were recorded at the present value of the minimum royalty payments. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px; background: none;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px; background: none; text-decoration: none;;display:inline;"&gt; &lt;/div&gt;&lt;/div&gt;  &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The acquired identifiable intangible asset is as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 77%;"/&gt;
&lt;td style="width: 8%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 8%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"/&gt;(In thousands)&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Fair&lt;br/&gt;Value&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Useful&#160;Life&lt;br/&gt;(Years)&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer Contract Relationships&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;530&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;20&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt; &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="clear:both;max-height:0pt;"/&gt;&lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The minimum royalty payment due was discounted based on the payment schedule and applicable discount rate, resulting in an outstanding royalty obligation of $0.5 million as of January 31, 2023, including $0.1 million recorded as a current liability. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Additional royalties based on sales activity will be recorded in the period that the associated revenue is earned. During the fourth quarter of 2023, we incurred $0.1 million &lt;div style="display:inline;"&gt;in e&lt;/div&gt;xcess royalty expense, which is included in cost of revenue in our consolidated statement of income for the year ended January 31, 2023. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="P08_04_2022To08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">17100000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired
      contextRef="PAsOn08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis"
      decimals="2"
      unitRef="Unit_pure">1</us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="P08_04_2022To08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">15600000</us-gaap:PaymentsToAcquireBusinessesGross>
    <alot:PurchasePriceIntoAnEscrowAccount
      contextRef="P08_04_2022To08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis"
      decimals="0"
      unitRef="Unit_USD">300000</alot:PurchasePriceIntoAnEscrowAccount>
    <us-gaap:PaymentsToAcquireLand
      contextRef="P08_04_2022To08_04_2022_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">1500000</us-gaap:PaymentsToAcquireLand>
    <us-gaap:AreaOfLand
      contextRef="PAsOn08_04_2022"
      decimals="0"
      unitRef="Unit_sqft">34460</us-gaap:AreaOfLand>
    <alot:NumberOfAcresOfLand contextRef="P02_01_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis">1.26</alot:NumberOfAcresOfLand>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="P02_01_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis"
      decimals="-5"
      unitRef="Unit_USD">700000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following table sets forth the final purchase price allocation of the Astro Machine acquisition for the estimated fair value of the net asset acquired and liabilities assumed as of the date of acquisition: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:85%"/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr&gt;
&lt;td style="vertical-align: bottom; line-height: 8pt; font-size: 8pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="text-indent: 0px; line-height: 8pt; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;(In thousands)&lt;/div&gt;&lt;br/&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 8pt; font-size: 8pt;"&gt; &lt;div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"&gt; &lt;div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"&gt; &lt;div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 8pt; font-size: 8pt;"&gt; &lt;div style="margin-bottom: 0px; margin-top: 0px; font-size: 8pt; line-height: 8pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;Cash&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;91&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Accounts Receivable&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,393&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Inventory&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,715&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Property, Plant and Equipment&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,200&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Identifiable Intangible Assets&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,480&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Goodwill&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,730&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Accounts Payable and Other Current Liabilities&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,484&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total Purchase Price&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; border-bottom: 2.5pt double black;"&gt;$&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; border-bottom: 2.5pt double black;;text-align:right;"&gt;17,125&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="PAsOn08_04_2022"
      decimals="-3"
      unitRef="Unit_USD">91000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="PAsOn08_04_2022"
      decimals="-3"
      unitRef="Unit_USD">3393000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="PAsOn08_04_2022"
      decimals="-3"
      unitRef="Unit_USD">5715000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="PAsOn08_04_2022"
      decimals="-3"
      unitRef="Unit_USD">4200000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="PAsOn08_04_2022"
      decimals="-3"
      unitRef="Unit_USD">3480000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <alot:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill
      contextRef="PAsOn08_04_2022"
      decimals="-3"
      unitRef="Unit_USD">2730000</alot:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities
      contextRef="PAsOn08_04_2022"
      decimals="-3"
      unitRef="Unit_USD">2484000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="PAsOn08_04_2022"
      decimals="-3"
      unitRef="Unit_USD">17125000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <alot:FairValueOfIntangibleAssetsMeasurementInput
      contextRef="PAsOn01_31_2023_MeasurementInputRoyaltyRateMemberusgaapMeasurementInputTypeAxis"
      decimals="INF"
      unitRef="Unit_pure">0.0075</alot:FairValueOfIntangibleAssetsMeasurementInput>
    <alot:FairValueOfIntangibleAssetsMeasurementInput
      contextRef="PAsOn01_31_2023_MeasurementInputCustomerAttritionRateMemberusgaapMeasurementInputTypeAxis"
      decimals="INF"
      unitRef="Unit_pure">0.18</alot:FairValueOfIntangibleAssetsMeasurementInput>
    <alot:FairValueOfIntangibleAssetsMeasurementInput
      contextRef="PAsOn01_31_2023_MeasurementInputDiscountRateMemberusgaapMeasurementInputTypeAxis"
      decimals="INF"
      unitRef="Unit_pure">0.19</alot:FairValueOfIntangibleAssetsMeasurementInput>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following table sets forth the fair value of the acquired identifiable intangible assets and related estimated useful lives: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px; padding-top: 0pt; padding-bottom: 0pt;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 76%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:75%"/&gt;
&lt;td style="vertical-align:bottom;width:9%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:9%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="font-weight:bold;display:inline;width:100%;"&gt;Fair&lt;br/&gt; Value&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="font-weight:bold;display:inline;width:100%;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="font-weight:bold;display:inline;width:100%;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="font-weight:bold;display:inline;width:100%;"&gt;Useful&#160;Life&lt;br/&gt; (&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;y&lt;/div&gt;ears)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Customer Relations&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,060&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Trademarks/Tradenames&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;420&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Total&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,480&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="P08_04_2022To08_04_2022_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">3060000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife contextRef="P08_04_2022To08_04_2022_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="P08_04_2022To08_04_2022_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">420000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife contextRef="P08_04_2022To08_04_2022_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="P08_04_2022To08_04_2022"
      decimals="-3"
      unitRef="Unit_USD">3480000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:Goodwill
      contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis"
      decimals="-4"
      unitRef="Unit_USD">2730000</us-gaap:Goodwill>
    <us-gaap:BusinessAcquisitionProFormaInformationTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The amounts of revenue and earnings before taxes included in our consolidated statement of income from the period August 4, 2022 (acquisition date) through January 31, 2023 are as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:85%"/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(In thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Revenue&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12,515&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Earnings before Taxes&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,571&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:BusinessAcquisitionProFormaInformationTextBlock>
    <alot:BusinessAcquisitionRevenue
      contextRef="P08_04_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">12515000</alot:BusinessAcquisitionRevenue>
    <alot:BusinessAcquisitionEarningBeforeTaxes
      contextRef="P08_04_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">1571000</alot:BusinessAcquisitionEarningBeforeTaxes>
    <us-gaap:RoyaltyGuaranteesCommitmentsAmount
      contextRef="PAsOn01_31_2023_RoyaltyPaymentsDueInNextTwelveMonthsMemberALOTRoyaltyPaymentsDueAxis"
      decimals="-3"
      unitRef="Unit_USD">100000000</us-gaap:RoyaltyGuaranteesCommitmentsAmount>
    <us-gaap:RoyaltyGuaranteesCommitmentsAmount
      contextRef="PAsOn01_31_2023_RoyaltyPaymentsDueYearTwoMemberALOTRoyaltyPaymentsDueAxis"
      decimals="-3"
      unitRef="Unit_USD">200000000</us-gaap:RoyaltyGuaranteesCommitmentsAmount>
    <us-gaap:RoyaltyGuaranteesCommitmentsAmount
      contextRef="PAsOn01_31_2023_RoyaltyPaymentsDueYearFourMemberALOTRoyaltyPaymentsDueAxis"
      decimals="-3"
      unitRef="Unit_USD">233000000</us-gaap:RoyaltyGuaranteesCommitmentsAmount>
    <us-gaap:RoyaltyGuaranteesCommitmentsAmount
      contextRef="PAsOn01_31_2023_RoyaltyPaymentsDueYearThreeMemberALOTRoyaltyPaymentsDueAxis"
      decimals="-3"
      unitRef="Unit_USD">233000000</us-gaap:RoyaltyGuaranteesCommitmentsAmount>
    <us-gaap:RoyaltyGuaranteesCommitmentsAmount
      contextRef="PAsOn01_31_2023_RoyaltyPaymentsDueYearFiveMemberALOTRoyaltyPaymentsDueAxis"
      decimals="-3"
      unitRef="Unit_USD">234000000</us-gaap:RoyaltyGuaranteesCommitmentsAmount>
    <us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The acquired identifiable intangible asset is as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 77%;"/&gt;
&lt;td style="width: 8%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 8%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"/&gt;(In thousands)&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Fair&lt;br/&gt;Value&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Useful&#160;Life&lt;br/&gt;(Years)&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer Contract Relationships&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;530&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;20&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsFairValueDisclosure
      contextRef="PAsOn01_31_2023_CustomerRelatedIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">530000</us-gaap:FiniteLivedIntangibleAssetsFairValueDisclosure>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P02_01_2022To01_31_2023_CustomerRelatedIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P20Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <alot:RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue
      contextRef="PAsOn01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">500000</alot:RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue>
    <us-gaap:RoyaltyExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">100000</us-gaap:RoyaltyExpense>
    <alot:RoyaltyGuaranteesCommitmentsAmountNonCurrent
      contextRef="PAsOn01_31_2023_NonCurrentLiabilityMemberusgaapBalanceSheetLocationAxis"
      decimals="-5"
      unitRef="Unit_USD">100000</alot:RoyaltyGuaranteesCommitmentsAmountNonCurrent>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Note 3&#x2014;Revenue Recognition &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;text-indent: 0px;;display:inline;"&gt;We derive revenue from the sale of (i)&#160;hardware including, digital color la&lt;div style="display:inline;"&gt;be&lt;/div&gt;l printers and specialty OEM printing systems, portable data acquisition systems and airborne printers used in the flight deck and interior of commercial, business and military aircraft, (ii)&#160;related consumable supplies including paper, labels, tags, inks, toners and ribbons, (iii)&#160;repairs and maintenance of equipment and (iv)&#160;service agreements&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Revenues disaggregated by primary geographic markets and major product types are as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Primary geographical markets: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 84%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:61%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;United States&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;91,917&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;68,185&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;70,911&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Europe&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;31,021&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;31,922&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;29,029&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Canada&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8,393&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;6,519&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,574&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Asia&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,345&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,926&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,105&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Central and South America&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,589&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,271&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,950&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Other&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,262&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,657&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,464&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Total Revenue&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;142,527&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;117,480&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;116,033&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="clear:both;max-height:0pt;"/&gt;&lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Major product types: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 84%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:61%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Hardware&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;42,445&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;31,492&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;34,111&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Supplies&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;82,072&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;73,244&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;71,772&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Service and Other&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;18,010&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12,744&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;10,150&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total Revenue&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;142,527&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;117,480&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;116,033&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;In December 2022, we entered into an amended contract with one of our T&amp;amp;M customers that provided for a total payment of $3.25&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;text-indent: 0px;;display:inline;"&gt;&#160;million to be received as a result of our claims allowable under French law relating to additional component costs we have incurred and will continue to incur in order to supply aerospace printers under the contract for the period beginning in April 2022 and continuing through 2025. As of January&#160;31, 2023, $&lt;/div&gt;&lt;/div&gt;1.1&#160;million was recognized as revenue in the consolidated income statement for the period ended January&#160;31, 2023, in proportion to the total estimated shipments through the end of the contract period. The balance is recorded within deferred revenue, both current and &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-current,&lt;/div&gt; and will be recognized into revenue based on shipments made of the printers during fiscal years 2024 and 2025. &lt;/div&gt; &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Contract Assets and Liabilities &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We normally do not have contract assets, which are primarily unbilled accounts receivable that are conditional on something other than the passage of time. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Our contract liabilities, which represent billings in excess of revenue recognized, are related to advanced billings for purchased service agreements and extended warranties. Contract liabilities were $412,000 and $262,000 at January&#160;31, 2023 and January&#160;31, 2022, respectively, and are recorded as current deferred revenue in the accompanying consolidated balance sheet. The decrease in the deferred revenue balance during the year ended January&#160;31, 2023 is primarily due to $248,000 of revenue recognized during the period that was included in the deferred revenue balance at January&#160;31, 2023 offset by cash payments received in advance of satisfying performance obligations. &lt;/div&gt; &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Contract Costs &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We have determined that certain costs related to obtaining sales contracts for our aerospace printer products meet the requirement to be capitalized. In the second quarter of fiscal 2022, we extended the remaining useful life of these deferred costs from 6 years to 20 years and changed the amortization method from units sold to the straight-line method. We believe these changes, based on &lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;the life of the aircraft under the applicable sales contracts, appropriately reflects a more systematic and rational approach. This change was treated as a change in&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;accounting estimate that is affected by a change in accounting principle. The impact on net income was immaterial for the period ended January&#160;&lt;/div&gt;31&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;, &lt;/div&gt;2022&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;. The balance of these contract assets at &lt;/div&gt;January 31, 2022&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;, was $&lt;/div&gt;1.3&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;million, and in the first quarter of fiscal &lt;/div&gt;2023&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; we incurred an additional $&lt;/div&gt;0.1&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;million in contract costs that will be amortized over &lt;/div&gt;19&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; years. For the years ended January&#160;&lt;/div&gt;31&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;, &lt;/div&gt;2023&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;, &lt;/div&gt;2022&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; and &lt;/div&gt;2021&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;, we amortized contract costs of $&lt;/div&gt;75,000&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;, $&lt;/div&gt;60,000 &lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;and $&lt;/div&gt;27,000&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;, respectively. The balance of deferred incremental direct costs net of accumulated amortization at January&#160;&lt;/div&gt;31&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;, &lt;/div&gt;2023&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;, was $&lt;/div&gt;1.4&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;million, of which $&lt;/div&gt;0.1&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;million is reported in other current assets and $&lt;/div&gt;1.3&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;million is reported in ot&lt;div style="display:inline;"&gt;her as&lt;/div&gt;sets in the accompanying consolidated balance sheet.&lt;/div&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Primary geographical markets: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 84%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:61%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;United States&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;91,917&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;68,185&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;70,911&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Europe&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;31,021&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;31,922&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;29,029&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Canada&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8,393&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;6,519&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,574&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Asia&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,345&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,926&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,105&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Central and South America&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,589&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,271&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,950&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Other&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,262&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,657&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,464&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;Total Revenue&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;142,527&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;117,480&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;116,033&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); padding-top: 0pt; padding-bottom: 0pt; line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="clear:both;max-height:0pt;"/&gt;&lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Major product types: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 84%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:61%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Hardware&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;42,445&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;31,492&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;34,111&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Supplies&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;82,072&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;73,244&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;71,772&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Service and Other&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;18,010&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12,744&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;10,150&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total Revenue&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;142,527&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;117,480&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;116,033&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_USsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">91917000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_USsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">68185000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_USsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">70911000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_EuropeMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">31021000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_EuropeMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">31922000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_EuropeMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">29029000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_CAsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">8393000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_CAsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">6519000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_CAsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">5574000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_AsiaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">5345000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_AsiaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">5926000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_AsiaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">5105000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_CentralAndSouthAmericaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">4589000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_CentralAndSouthAmericaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">3271000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_CentralAndSouthAmericaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">3950000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_OthersCountriesMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">1262000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_OthersCountriesMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">1657000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_OthersCountriesMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">1464000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">142527000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">117480000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">116033000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_HardwareProductsMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">42445000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_HardwareProductsMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">31492000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_HardwareProductsMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">34111000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_SuppliesMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">82072000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_SuppliesMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">73244000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_SuppliesMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">71772000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_ServiceAndOtherMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">18010000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_ServiceAndOtherMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">12744000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_ServiceAndOtherMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">10150000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">142527000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">117480000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">116033000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <alot:SettlementOfContractClaim
      contextRef="PAsOn12_31_2022_AerospaceCustomerMembersrtMajorCustomersAxis"
      decimals="-4"
      unitRef="Unit_USD">3250000</alot:SettlementOfContractClaim>
    <alot:SettlementofContractClaimRevenueRecognized
      contextRef="P02_01_2022To01_31_2023_AerospaceCustomerMembersrtMajorCustomersAxis"
      decimals="-5"
      unitRef="Unit_USD">1100000</alot:SettlementofContractClaimRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="PAsOn01_31_2023"
      decimals="0"
      unitRef="Unit_USD">412000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="PAsOn01_31_2022"
      decimals="0"
      unitRef="Unit_USD">262000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <alot:ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions
      contextRef="PAsOn01_31_2023"
      decimals="0"
      unitRef="Unit_USD">248000</alot:ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions>
    <alot:CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod contextRef="P02_01_2022To01_31_2023">P6Y</alot:CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod>
    <alot:CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod contextRef="P05_01_2021To07_31_2021_ChangeInAccountingMethodAccountedForAsChangeInEstimateMemberusgaapChangeInAccountingEstimateByTypeAxis">P20Y</alot:CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="PAsOn01_31_2022"
      decimals="-5"
      unitRef="Unit_USD">1300000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:CapitalizedContractCostNet
      contextRef="PAsOn01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">100000</us-gaap:CapitalizedContractCostNet>
    <alot:AdditionalCapitalizedContractCostsAmortizationPeriodRemaining contextRef="P02_01_2022To01_31_2023">P19Y</alot:AdditionalCapitalizedContractCostsAmortizationPeriodRemaining>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="P02_01_2022To01_31_2023"
      decimals="0"
      unitRef="Unit_USD">75000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="P02_01_2021To01_31_2022"
      decimals="0"
      unitRef="Unit_USD">60000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="P02_01_2020To01_31_2021"
      decimals="0"
      unitRef="Unit_USD">27000</us-gaap:CapitalizedContractCostAmortization>
    <alot:CapitalizedContractCostNetLongTermAndShortTerm
      contextRef="PAsOn01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">1400000</alot:CapitalizedContractCostNetLongTermAndShortTerm>
    <us-gaap:CapitalizedContractCostNetCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">100000</us-gaap:CapitalizedContractCostNetCurrent>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="PAsOn01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">1300000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:IntangibleAssetsDisclosureTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Note 4&#x2014;Intangibl&lt;div style="display:inline;"&gt;e&lt;/div&gt; Assets&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Intangible assets are as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 38%;"/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31, 2023&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31, 2022&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Accumulated&lt;br/&gt;Amortization&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Currency&lt;br/&gt;Translation&lt;br/&gt;Adjustment&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Net&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Accumulated&lt;br/&gt;Amortization&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Currency&lt;br/&gt;Translation&lt;br/&gt;Adjustment&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Net&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 9pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Miltope:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer&#160;Contract Relationships&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;3,100&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(2,777&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;323&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;3,100&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(2,515&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;585&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;RITEC:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer Contract Relationships&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;2,830&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(1,623&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;1,207&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;2,830&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(1,557&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;1,273&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;TrojanLabel:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Existing&#160;Technology&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;2,327&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(2,087&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;94&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;334&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;2,327&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(1,767&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;127&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;687&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Distributor&#160;Relations&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;937&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(588&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;27&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;376&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;937&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(498&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;46&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;485&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Honeywell:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer Contract Relationships&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;27,773&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(11,913&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;15,860&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;27,243&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(11,073&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;16,170&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Astro Machine:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer Contract Relationships&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;3,060&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(306&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;2,754&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademarks&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;420&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(42&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;378&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 38%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Intangible Assets, net&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;40,447&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(19,336&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;121&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;21,232&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;36,437&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(17,410&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;173&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;19,200&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 38%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt;  &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;In the second quarter of 2022, we extended the remaining useful life of the pre-existing customer contract relationship intangibles for Honeywell International, Inc. (&#x201c;Honeywell&#x201d;) from &lt;/div&gt;&lt;/div&gt;6 years to 20 years and for the RITEC intangibles we changed the amortization method which was based on revenue with a remaining life of 4 years to the straight-line method with a &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;20-year&lt;/div&gt; remaining life. We believe these changes, based on the life of the aircraft related to these intangibles, appropriately reflects a more systematic and rational approach to distributing the cost of these intangibles over their useful lives. The change in the amortization of the Honeywell customer contract relationship intangibles is being treated as a change in accounting estimate in 2022 and the change in the amortization of the RITEC customer contract relationship intangibles is being treated as a change in accounting estimate in 2022 that is effected by a change in accounting principle. The changes in amortization resulted in a $1.8&#160;million decrease in amortization expense and a $1.8&#160;million increase to net income for the period ended January&#160;31, 2022. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;There were no impairments to intangible assets during the periods ended January&#160;31, 2023 and 2022. Amortization expense of $1.9&#160;million, $2.2&#160;million, and $4.1&#160;million with regard to acquired intangibles has been included in the consolidated statements of income for the years ended January&#160;31, 2023, 2022 and 2021, respectively.&lt;br/&gt;&lt;/div&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Estimated amortization expense for the next &lt;div style="display:inline;"&gt;five&lt;/div&gt; fiscal years is as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:64%"/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2024&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2025&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2026&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2027&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2028&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Estimated amortization expense&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,378&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,719&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,718&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,7192&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,281&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Intangible assets are as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 38%;"/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31, 2023&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31, 2022&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Accumulated&lt;br/&gt;Amortization&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Currency&lt;br/&gt;Translation&lt;br/&gt;Adjustment&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Net&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Accumulated&lt;br/&gt;Amortization&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Currency&lt;br/&gt;Translation&lt;br/&gt;Adjustment&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Net&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 9pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Miltope:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="display:inline;"/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer&#160;Contract Relationships&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;3,100&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(2,777&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;323&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;3,100&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(2,515&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;585&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;RITEC:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer Contract Relationships&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;2,830&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(1,623&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;1,207&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;2,830&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(1,557&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;1,273&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;TrojanLabel:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Existing&#160;Technology&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;2,327&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(2,087&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;94&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;334&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;2,327&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(1,767&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;127&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;687&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Distributor&#160;Relations&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;937&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(588&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;27&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;376&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;937&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(498&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;46&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;485&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Honeywell:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer Contract Relationships&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;27,773&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(11,913&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;15,860&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;27,243&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(11,073&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;16,170&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Astro Machine:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer Contract Relationships&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;3,060&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(306&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;2,754&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademarks&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;420&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(42&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;378&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#x2014;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 38%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 38%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="text-indent: -1em; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 9pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Intangible Assets, net&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;40,447&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(19,336&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;121&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;21,232&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;36,437&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;(17,410&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;)&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;173&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;;text-align:right;"&gt;19,200&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; line-height: 9pt; font-size: 9pt;"&gt;&lt;div style="font-size:9pt;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 38%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt; </us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">3100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">2777000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">323000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">3100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">2515000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_MiltopeCorporationMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">585000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">2830000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">1623000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">1207000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">2830000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">1557000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">1273000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2023_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">2327000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2023_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">2087000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment
      contextRef="PAsOn01_31_2023_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">94000</alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2023_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">334000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2022_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">2327000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2022_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">1767000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment
      contextRef="PAsOn01_31_2022_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">127000</alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2022_ExistingTechnologyMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">687000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2023_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">937000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2023_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">588000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment
      contextRef="PAsOn01_31_2023_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">27000</alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2023_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">376000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2022_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">937000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2022_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">498000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment
      contextRef="PAsOn01_31_2022_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">46000</alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2022_DistributorRelationsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_TrojanlabelApSMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">485000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis"
      decimals="-3"
      unitRef="Unit_USD">27773000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis"
      decimals="-3"
      unitRef="Unit_USD">11913000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis"
      decimals="-3"
      unitRef="Unit_USD">15860000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis"
      decimals="-3"
      unitRef="Unit_USD">27243000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis"
      decimals="-3"
      unitRef="Unit_USD">11073000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2022_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis"
      decimals="-3"
      unitRef="Unit_USD">16170000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">3060000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">306000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">2754000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">420000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">42000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">378000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">40447000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">19336000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">121000</alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">21232000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">36437000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">17410000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">173000</alot:FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">19200000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1 contextRef="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis">P6Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1 contextRef="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis">P20Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1 contextRef="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis">P4Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1 contextRef="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis_RuggedInformationTechnologyEquipmentCorporationMemberusgaapBusinessAcquisitionAxis">P20Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <alot:DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod
      contextRef="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis"
      decimals="-5"
      unitRef="Unit_USD">1800000</alot:DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod>
    <alot:IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization
      contextRef="P02_01_2022To01_31_2023_CustomerContractsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_IntangibleAssetsAmortizationPeriodMemberusgaapChangeInAccountingEstimateByTypeAxis"
      decimals="-5"
      unitRef="Unit_USD">1800000</alot:IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization>
    <us-gaap:ImpairmentOfIntangibleAssetsFinitelived
      contextRef="P02_01_2022To01_31_2023"
      decimals="INF"
      unitRef="Unit_USD">0</us-gaap:ImpairmentOfIntangibleAssetsFinitelived>
    <us-gaap:ImpairmentOfIntangibleAssetsFinitelived
      contextRef="P02_01_2021To01_31_2022"
      decimals="INF"
      unitRef="Unit_USD">0</us-gaap:ImpairmentOfIntangibleAssetsFinitelived>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="P02_01_2022To01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">1900000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="P02_01_2021To01_31_2022"
      decimals="-5"
      unitRef="Unit_USD">2200000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="P02_01_2020To01_31_2021"
      decimals="-5"
      unitRef="Unit_USD">4100000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Estimated amortization expense for the next &lt;div style="display:inline;"&gt;five&lt;/div&gt; fiscal years is as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:64%"/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2024&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2025&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2026&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2027&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2028&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Estimated amortization expense&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,378&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,719&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,718&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,7192&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,281&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2378000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1719000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1718000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">17192000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1281000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:InventoryDisclosureTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 5&#x2014;Inventories &lt;/div&gt;&lt;/div&gt;  &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The components of invento&lt;div style="display:inline;"&gt;ries&lt;/div&gt; are as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:74%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Materials and Supplies&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;38,387&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;22,709&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Work-in-Progress&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,146&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,489&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Finished Goods&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;23,221&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;19,718&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;62,754&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;43,916&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Inventory Reserve&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(11,430&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(9,307&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;51,324&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;34,609&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Finished goods inventory includes $2.3&#160;million and $3.4&#160;million of demonstration equipment at January&#160;31, 2023 and 2022, respectively. &lt;/div&gt; </us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The components of invento&lt;div style="display:inline;"&gt;ries&lt;/div&gt; are as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:74%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Materials and Supplies&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;38,387&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;22,709&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Work-in-Progress&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,146&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,489&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Finished Goods&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;23,221&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;19,718&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;62,754&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;43,916&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Inventory Reserve&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(11,430&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(9,307&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;51,324&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;34,609&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; </us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterialsAndSupplies
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">38387000</us-gaap:InventoryRawMaterialsAndSupplies>
    <us-gaap:InventoryRawMaterialsAndSupplies
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">22709000</us-gaap:InventoryRawMaterialsAndSupplies>
    <us-gaap:InventoryWorkInProcess
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1146000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryWorkInProcess
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1489000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryFinishedGoods
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">23221000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">19718000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryGross
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">62754000</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">43916000</us-gaap:InventoryGross>
    <us-gaap:InventoryValuationReserves
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">11430000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">9307000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryNet
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">51324000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">34609000</us-gaap:InventoryNet>
    <alot:InventoryDemonstrationEquipment
      contextRef="PAsOn01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">2300000</alot:InventoryDemonstrationEquipment>
    <alot:InventoryDemonstrationEquipment
      contextRef="PAsOn01_31_2022"
      decimals="-5"
      unitRef="Unit_USD">3400000</alot:InventoryDemonstrationEquipment>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 6&#x2014;Property, Plant and Equipment &lt;/div&gt;&lt;/div&gt;  &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Property, plant and equipment consist of the following: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:72%"/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Land and Land Improvements&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,304&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,004&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Buildings and Leasehold Improvements&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,158&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12,666&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Machinery and Equipment&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;24,960&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;23,238&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Computer Equipment and Software&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13,972&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13,913&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Gross Property, Plant and Equipment&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;55,394&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;50,821&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Accumulated Depreciation&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(41,106&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(39,380&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Net Property Plant and Equipment&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,288&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11,441&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Depreciation expense on property, plant and equipment was $2.0&#160;million for the year ended January&#160;31, 2023 and $1.7&#160;million and $1.9&#160;million for the years ended January&#160;31, 2022 and 2021, respectively. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;During fiscal 2022, we &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;wrote-off&lt;/div&gt; our Oracle EnterpriseOne enterprise resource planning (&#x201c;ERP&#x201d;) system due to the full implementation of a new ERP system in our US operations.&#160;The book value and related accumulated depreciation of the Oracle EnterpriseOne ERP system along with the balance of the related prepaid service and maintenance contracts were removed from the accompanying consolidated balance sheet at January&#160;31, 2022, and we have recorded a net loss on the disposal of $696,000, which is included in other income (expense) in the accompanying consolidated income statement for the year ended January&#160;31, 2022. &lt;/div&gt; </us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Property, plant and equipment consist of the following: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:72%"/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Land and Land Improvements&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,304&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,004&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Buildings and Leasehold Improvements&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,158&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12,666&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Machinery and Equipment&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;24,960&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;23,238&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Computer Equipment and Software&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13,972&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13,913&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Gross Property, Plant and Equipment&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;55,394&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;50,821&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Accumulated Depreciation&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(41,106&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(39,380&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Net Property Plant and Equipment&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,288&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11,441&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; </us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:LandAndLandImprovements
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2304000</us-gaap:LandAndLandImprovements>
    <us-gaap:LandAndLandImprovements
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1004000</us-gaap:LandAndLandImprovements>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">14158000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">12666000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">24960000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">23238000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:CapitalizedComputerSoftwareGross
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">13972000</us-gaap:CapitalizedComputerSoftwareGross>
    <us-gaap:CapitalizedComputerSoftwareGross
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">13913000</us-gaap:CapitalizedComputerSoftwareGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">55394000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">50821000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">41106000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">39380000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">14288000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">11441000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Depreciation
      contextRef="P02_01_2022To01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">2000000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="P02_01_2021To01_31_2022"
      decimals="-5"
      unitRef="Unit_USD">1700000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="P02_01_2020To01_31_2021"
      decimals="-5"
      unitRef="Unit_USD">1900000</us-gaap:Depreciation>
    <us-gaap:CapitalizedComputerSoftwareImpairments1
      contextRef="P02_01_2021To01_31_2022_NonoperatingIncomeExpenseMemberusgaapIncomeStatementLocationAxis"
      decimals="0"
      unitRef="Unit_USD">696000</us-gaap:CapitalizedComputerSoftwareImpairments1>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 7&#x2014;Accrued Expenses &lt;/div&gt;&lt;/div&gt; &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accrued expenses consist of the following: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="letter-spacing: 0px; top: 0px; background: none;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px; background: none; text-decoration: none;;display:inline;"&gt; &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 78%;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:78%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Warranty&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,072&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;834&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Professional Fees&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;311&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;411&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Freight&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;347&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;span style="-sec-ix-hidden:hidden75771655"&gt;Lease&lt;/span&gt; &lt;span style="-sec-ix-hidden:hidden75771656"&gt;Liability&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;275&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;327&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Accrued Property&#160;&amp;amp; Sales Tax&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;187&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;316&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Stockholder Relation Fees&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;86&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;102&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Dealer Commissions&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;78&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;139&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Accrued Expenses&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,299&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,637&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 78%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,308&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,113&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 78%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt; </us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accrued expenses consist of the following: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="letter-spacing: 0px; top: 0px; background: none;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px; background: none; text-decoration: none;;display:inline;"&gt; &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 78%;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:78%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Warranty&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,072&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;834&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Professional Fees&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;311&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;411&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Freight&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;347&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;span style="-sec-ix-hidden:hidden75771655"&gt;Lease&lt;/span&gt; &lt;span style="-sec-ix-hidden:hidden75771656"&gt;Liability&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;275&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;327&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Accrued Property&#160;&amp;amp; Sales Tax&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;187&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;316&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Stockholder Relation Fees&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;86&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;102&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Dealer Commissions&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;78&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;139&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Accrued Expenses&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,299&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,637&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 78%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,308&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,113&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 78%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt; </us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1072000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">834000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">311000</us-gaap:AccruedProfessionalFeesCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">411000</us-gaap:AccruedProfessionalFeesCurrent>
    <alot:AccruedFreight
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</alot:AccruedFreight>
    <alot:AccruedFreight
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">347000</alot:AccruedFreight>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">275000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">327000</us-gaap:OperatingLeaseLiabilityCurrent>
    <alot:AccruedPayrollAndSalesTaxesCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">187000</alot:AccruedPayrollAndSalesTaxesCurrent>
    <alot:AccruedPayrollAndSalesTaxesCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">316000</alot:AccruedPayrollAndSalesTaxesCurrent>
    <alot:AccruedStockHolderRelationFees
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">86000</alot:AccruedStockHolderRelationFees>
    <alot:AccruedStockHolderRelationFees
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">102000</alot:AccruedStockHolderRelationFees>
    <us-gaap:AccruedSalesCommissionCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">78000</us-gaap:AccruedSalesCommissionCurrent>
    <us-gaap:AccruedSalesCommissionCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">139000</us-gaap:AccruedSalesCommissionCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1299000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1637000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">3308000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">4113000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:DebtDisclosureTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 8&#x2014;Credit Agreement and Long-Term Debt &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Credit Agreement &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;In connection with the purchase of Astro Machine, on August 4, 2022, we entered into a Second Amendment to Amended and Restated Credit Agreement (the &#x201c;Second Amendment&#x201d;) with Bank of America, N.A., as lender (the &#x201c;Lender&#x201d;). The Second Amendment amended the Amended and Restated Credit Agreement dated as of July 30, 2020, as amended by the First Amendment to Amended and Restated Credit Agreement, dated as of March 24, 2021, and the LIBOR Transition Amendment, dated as of December 24, 2021 (the &#x201c;Existing Credit Agreement,&#x201d; and the Existing Credit Agreement as amended by the Second Amendment, the &#x201c;Amended Credit Agreement&#x201d;), between the Company and the Lender. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The Amended Credit Agreement provides for (i)&#160;a new term loan in the principal amount of $6.0&#160;million, which term loan was in addition to the existing term loan outstanding under the Existing Credit Agreement in the principal amount of $9.0&#160;million as of the effective date of the Second Amendment, and (ii)&#160;an increase in the aggregate principal amount of the revolving credit facility available thereunder from $22.5&#160;million to $25.0&#160;million. At the closing of the Second Amendment, we borrowed the entire $6.0&#160;million term loan and $12.4&#160;million under the revolving credit facility, and the proceeds of such borrowings were used in part to pay the purchase price payable under the Purchase Agreement and certain related transaction costs. The revolving credit facility may otherwise be used for corporate purposes. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The Amended Credit Agreement requires that the term loan be paid in quarterly installments on the last day of each of our fiscal quarters over the term of the Amended Credit Agreement on the following repayment schedule: the principal amount of each quarterly installment required to be paid on the last day of each of our fiscal quarters ending on or about October 31, 2022 through July 31, 2023 is $375,000; and the principal amount of each quarterly installment required to be paid on the last day of each of our fiscal quarters ending on or about October 31, 2023 through April 30, 2027 is $675,000. The entire remaining principal balance of the term loan is required to be paid on August 4, 2027. We may voluntarily prepay the term loan, in whole or in part, from time to time without premium or penalty (other than customary breakage costs, if applicable). We may repay borrowings under the revolving credit facility at any time without premium or penalty (other than customary breakage costs, if applicable), but in any event no later than August 4, 2027, and any outstanding revolving loans thereunder will be due and payable in full, and the revolving credit facility will terminate, on such date. We may reduce or terminate the revolving line of credit at any time, subject to certain thresholds and conditions, without premium or penalty. &lt;br/&gt;&lt;/div&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The interest rates under the Amended Credit Agreement are as follows: the term loan and revolving credit loans bear interest at a rate per annum equal to, at our option, either (a)&#160;the BSBY Rate as defined in the &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; margin-left: 0in;"&gt;Amended Credit Agreement (or, in the case of revolving credit loans denominated in a currency other than U.S. Dollars, the applicable quoted rate), plus a margin that varies within a range of 1.60% to 2.50% based on our consolidated leverage ratio, or (b)&#160;a fluctuating reference rate equal to the highest of (i)&#160;the federal fund rate plus 0.50%, (ii) Bank of America&#x2019;s publicly announced prime rate, (iii)&#160;the BSBY Rate plus 1.00%, or (iv) 0.50%, plus a margin that varies within a range of 0.60% to 1.50% based on our consolidated leverage ratio. In addition to certain other fees and expenses that we are required to pay to the Lender, we are required to pay a commitment fee on the undrawn portion of the revolving credit facility that varies within a range of 0.15% and 0.35% based on our consolidated leverage ratio. The loans under the Amended Credit Agreement are subject to certain mandatory prepayments, subject to various exceptions, from (a)&#160;net cash proceeds from certain dispositions of property, (b) net cash proceeds from certain issuances of equity, (c)&#160;net cash proceeds from certain issuances of additional debt and (d) net cash proceeds from certain extraordinary receipts. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Amounts repaid under the revolving credit facility may be reborrowed, subject to our continued compliance with the Amended Credit Agreement. No amount of the term loan that is repaid may be reborrowed. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We must comply with various customary financial and &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-financial&lt;/div&gt; covenants under the Amended Credit Agreement. The financial covenants under the Amended Credit Agreement consist of a maximum consolidated leverage ratio, a minimum consolidated fixed charge coverage ratio and a minimum consolidated asset coverage ratio. The primary &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-financial&lt;/div&gt; covenants limit our and our subsidiaries&#x2019; ability to incur future indebtedness, to place liens on assets, to pay dividends or distributions on our or our subsidiaries&#x2019; capital stock, to repurchase or acquire our or our subsidiaries&#x2019; capital stock, to conduct mergers or acquisitions, to sell assets, to alter our or our subsidiaries&#x2019; capital structure, to make investments and loans, to change the nature of our or our subsidiaries&#x2019; business, and to prepay subordinated indebtedness, in each case subject to certain exceptions and thresholds as set forth in the Amended Credit Agreement, certain of which provisions were modified by the Second Amendment. As of January&#160;31, 2023, we believe we are in compliance with all of the covenants in the Credit Agreement. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The Lender is entitled to accelerate repayment of the loans and to terminate its revolving credit commitment under the Amended Credit Agreement upon the occurrence of any of various customary events of default, which include, among other events, the following (which are subject, in some cases, to certain grace periods): failure to pay when due any principal, interest or other amounts in respect of the loans, breach of any of our covenants or representations under the loan documents, default under any other of our or our subsidiaries&#x2019; significant indebtedness agreements, a bankruptcy, insolvency or similar event with respect to us or any of our subsidiaries, a significant unsatisfied judgment against us or any of our subsidiaries, or a change of control. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Our obligations under the Amended Credit Agreement continue to be secured by substantially all of our personal property assets (including a pledge of the equity interests we hold in ANI ApS, AstroNova GmbH and AstroNova SAS), subject to certain exceptions, and by a mortgage on our owned real property in West Warwick, Rhode Island, and are guaranteed by, and secured by substantially all of the personal property assets of Astro Machine. &lt;/div&gt;&lt;div style="margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Summary of Outstanding Debt &lt;/div&gt;&lt;/div&gt;&lt;div style="margin-top:6pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Revolving Credit Facility &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;During fiscal 2023 we borrowed a net of $15.9&#160;million on our revolving line of credit. The balance outstanding under the revolving line of credit bore interest at a weighted average rate of 6.71% and 4.10% for the years ended January&#160;31, 2023 and January&#160;31, 2022, respectively, and we incurred $752,000 and $4,000 for interest on this obligation during the years ended January&#160;31, 2023 and January&#160;31, 2022, respectively. Commitment fees on the undrawn portion of our revolving credit facility of $30,000 and $50,000 were incurred for the yea&lt;div style="background-color:#ffffff;;display:inline;"&gt;rs ended January&#160;31&lt;/div&gt;&lt;div style="background-color:#ffffff;;display:inline;"&gt;, 2023&lt;/div&gt;&lt;div style="background-color:#ffffff;;display:inline;"&gt; and January&#160;31&lt;/div&gt;&lt;div style="background-color:#ffffff;;display:inline;"&gt;, 2022&lt;/div&gt;&lt;div style="background-color:#ffffff;;display:inline;"&gt;, respectively. Both the interest expense and commitment fees are included as interest expense in the accompanying consolidated income statement for all periods presented. At January&#160;31&lt;/div&gt;&lt;div style="background-color:#ffffff;;display:inline;"&gt;, 2023&lt;/div&gt;&lt;div style="background-color:#ffffff;;display:inline;"&gt;, $&lt;/div&gt;&lt;div style="background-color:#ffffff;;display:inline;"&gt;9.1&lt;/div&gt;&lt;div style="background-color:#ffffff;;display:inline;"&gt;&#160;million remains available for borrowing under our revolving line of credit.&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Long-Term Debt &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Long-term debt in the accompanying condensed consolidated balance sheets under the Amended Credit Agreement is as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:74%"/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;USD Term Loan (6.78% as of January&#160;31, 2023); maturity date of August 4, 2027&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;USD Term Loan (2.35% as of January&#160;31, 2022); maturity date of September&#160;30, 2025&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Debt Issuance Costs, net of accumulated amortization&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(110&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(96&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Current Portion of Term Loan&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,100&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,000&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Long-Term Debt&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12,040&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8,154&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;During the years ended January&#160;31, 2023, 2022 and 2021, we recognized $0.6&#160;million, $0.3&#160;million and $0.5&#160;million of interest expense on our long-term debt, respectively, which was included in interest expense in the accompanying consolidated income statement for all periods presented. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The schedule of required principal payments remaining on our long-term debt outstanding as of January&#160;31, 2023 is as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:68%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:85%"/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Fiscal 2024&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,100&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Fiscal 2025&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,700&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Fiscal 2026&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,700&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Fiscal 2027&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,700&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Fiscal 2028&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,050&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; </us-gaap:DebtDisclosureTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="PAsOn08_04_2022_AdditionalTermLoanAvailedMemberALOTDetailsOneAxis_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis_TermLoanMemberusgaapCreditFacilityAxis"
      decimals="-5"
      unitRef="Unit_USD">6000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="PAsOn01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_BeforeAmendmentToTheCreditAgreementMemberALOTDetailsAxis_TermLoanMemberusgaapCreditFacilityAxis"
      decimals="-5"
      unitRef="Unit_USD">9000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="PAsOn01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_BeforeAmendmentToTheCreditAgreementMemberALOTDetailsAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="-5"
      unitRef="Unit_USD">22500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="PAsOn01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis"
      decimals="-5"
      unitRef="Unit_USD">25000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:ProceedsFromLongTermLinesOfCredit
      contextRef="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis"
      decimals="-5"
      unitRef="Unit_USD">6000000</us-gaap:ProceedsFromLongTermLinesOfCredit>
    <us-gaap:ProceedsFromLongTermLinesOfCredit
      contextRef="P08_04_2022To08_04_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis_SecondAmendmentCreditAgreementMemberALOTCreditAgreementAxis"
      decimals="-5"
      unitRef="Unit_USD">12400000</us-gaap:ProceedsFromLongTermLinesOfCredit>
    <us-gaap:DebtInstrumentPeriodicPaymentPrincipal
      contextRef="P10_31_2022To07_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_TermLoanMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">375000000</us-gaap:DebtInstrumentPeriodicPaymentPrincipal>
    <us-gaap:DebtInstrumentPeriodicPaymentPrincipal
      contextRef="P10_31_2023To04_30_2027_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_TermLoanMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">675000000</us-gaap:DebtInstrumentPeriodicPaymentPrincipal>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="P02_01_2022To01_31_2023_LondonInterbankOfferedRateLIBORMemberusgaapVariableRateAxis_MinimumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="4"
      unitRef="Unit_pure">0.016</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="P02_01_2022To01_31_2023_LondonInterbankOfferedRateLIBORMemberusgaapVariableRateAxis_MaximumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="4"
      unitRef="Unit_pure">0.025</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="P02_01_2022To01_31_2023_FederalFundsEffectiveSwapRateMemberusgaapVariableRateAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="4"
      unitRef="Unit_pure">0.005</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="P02_01_2022To01_31_2023_LondonInterbankOfferedRateLIBORMemberusgaapVariableRateAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="4"
      unitRef="Unit_pure">0.01</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentInterestRateBasisForEffectiveRate contextRef="P02_01_2022To01_31_2023_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis">0.50</us-gaap:DebtInstrumentInterestRateBasisForEffectiveRate>
    <alot:DebtInstrumentAdditionalBasisSpread
      contextRef="P02_01_2022To01_31_2023_MinimumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="4"
      unitRef="Unit_pure">0.006</alot:DebtInstrumentAdditionalBasisSpread>
    <alot:DebtInstrumentAdditionalBasisSpread
      contextRef="P02_01_2022To01_31_2023_MaximumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="4"
      unitRef="Unit_pure">0.015</alot:DebtInstrumentAdditionalBasisSpread>
    <us-gaap:LineOfCreditFacilityCommitmentFeePercentage
      contextRef="P02_01_2022To01_31_2023_MinimumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="4"
      unitRef="Unit_pure">0.0015</us-gaap:LineOfCreditFacilityCommitmentFeePercentage>
    <us-gaap:LineOfCreditFacilityCommitmentFeePercentage
      contextRef="P02_01_2022To01_31_2023_MaximumMembersrtRangeAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="4"
      unitRef="Unit_pure">0.0035</us-gaap:LineOfCreditFacilityCommitmentFeePercentage>
    <us-gaap:LineOfCredit
      contextRef="PAsOn01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">15900000</us-gaap:LineOfCredit>
    <us-gaap:LongTermDebtWeightedAverageInterestRateOverTime
      contextRef="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="4"
      unitRef="Unit_pure">0.0671</us-gaap:LongTermDebtWeightedAverageInterestRateOverTime>
    <us-gaap:LongTermDebtWeightedAverageInterestRateOverTime
      contextRef="P02_01_2021To01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="4"
      unitRef="Unit_pure">0.041</us-gaap:LongTermDebtWeightedAverageInterestRateOverTime>
    <us-gaap:InterestExpenseDebt
      contextRef="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_OtherExpenseMemberusgaapIncomeStatementLocationAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">752000000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="P02_01_2021To01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_OtherExpenseMemberusgaapIncomeStatementLocationAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">4000000</us-gaap:InterestExpenseDebt>
    <us-gaap:LineOfCreditFacilityCommitmentFeeAmount
      contextRef="P02_01_2022To01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_OtherExpenseMemberusgaapIncomeStatementLocationAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">30000000</us-gaap:LineOfCreditFacilityCommitmentFeeAmount>
    <us-gaap:LineOfCreditFacilityCommitmentFeeAmount
      contextRef="P02_01_2021To01_31_2022_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_OtherExpenseMemberusgaapIncomeStatementLocationAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">50000000</us-gaap:LineOfCreditFacilityCommitmentFeeAmount>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="PAsOn01_31_2023_BankOfAmericaMemberusgaapLineOfCreditFacilityAxis_RevolvingCreditFacilityMemberusgaapCreditFacilityAxis"
      decimals="-5"
      unitRef="Unit_USD">9100000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:ScheduleOfDebtTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Long-term debt in the accompanying condensed consolidated balance sheets under the Amended Credit Agreement is as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:74%"/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;USD Term Loan (6.78% as of January&#160;31, 2023); maturity date of August 4, 2027&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;USD Term Loan (2.35% as of January&#160;31, 2022); maturity date of September&#160;30, 2025&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Debt Issuance Costs, net of accumulated amortization&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(110&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(96&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Current Portion of Term Loan&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,100&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,000&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Long-Term Debt&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12,040&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8,154&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; </us-gaap:ScheduleOfDebtTableTextBlock>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="PAsOn01_31_2023_TermLoanDueAugustFourthTwoThousandAndTwentySevenMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">14250000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="PAsOn01_31_2022_TermLoanDueAugustFourthTwoThousandAndTwentySevenMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="PAsOn01_31_2023_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="PAsOn01_31_2022_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">9250000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">14250000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">9250000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">110000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">96000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:LongTermDebtCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2100000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1000000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">12040000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">8154000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:InterestExpenseDebt
      contextRef="P02_01_2022To01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">600000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="P02_01_2021To01_31_2022"
      decimals="-5"
      unitRef="Unit_USD">300000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="P02_01_2020To01_31_2021"
      decimals="-5"
      unitRef="Unit_USD">500000</us-gaap:InterestExpenseDebt>
    <us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The schedule of required principal payments remaining on our long-term debt outstanding as of January&#160;31, 2023 is as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:68%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:85%"/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Fiscal 2024&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,100&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Fiscal 2025&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,700&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Fiscal 2026&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,700&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Fiscal 2027&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,700&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Fiscal 2028&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,050&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; </us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
      contextRef="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">2100000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
      contextRef="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">2700000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
      contextRef="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">2700000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
      contextRef="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">2700000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
      contextRef="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">4050000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive>
    <us-gaap:LongTermDebt
      contextRef="PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis"
      decimals="-3"
      unitRef="Unit_USD">14250000</us-gaap:LongTermDebt>
    <alot:DisclosureForPaycheckProtectionProgramLoanTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 9&#x2014;Paycheck Protection Program Loan &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;On May&#160;6, 2020, we entered into a loan agreement with, and executed a promissory note in favor of Greenwood pursuant to which we borrowed $4.4&#160;million (the &#x201c;PPP Loan&#x201d;) from Greenwood under the Paycheck Protection Program (&#x201c;PPP&#x201d;) administered by the SBA and authorized by the CARES Act. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The PPP Loan, originally scheduled to mature on May 6, 2022, was unsecured and bore interest at a rate of 1.0% per annum, accruing from the loan date. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;On June&#160;15, 2021, Greenwood notified us that the SBA approved our application for forgiveness of the entire $4.4&#160;million principal balance of our PPP Loan and all accrued interest thereon. As a result, in the second quarter of fiscal 2022, we recorded a $4.5&#160;million gain on extinguishment of debt, which is included in the accompanying consolidated income statement for the period ended January&#160;31, &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2022. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</alot:DisclosureForPaycheckProtectionProgramLoanTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="PAsOn05_06_2020_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis"
      decimals="-5"
      unitRef="Unit_USD">4400000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentPaymentTerms contextRef="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis">The PPP Loan, originally scheduled to mature on May 6, 2022, was unsecured and bore interest at a rate of 1.0% per annum, accruing from the loan date.</us-gaap:DebtInstrumentPaymentTerms>
    <us-gaap:DebtInstrumentMaturityDate contextRef="P02_01_2022To01_31_2023_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis">2022-05-06</us-gaap:DebtInstrumentMaturityDate>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="PAsOn01_31_2023_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis"
      decimals="3"
      unitRef="Unit_pure">0.01</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentDecreaseForgiveness
      contextRef="P06_15_2021To06_15_2021_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis"
      decimals="-5"
      unitRef="Unit_USD">4400000</us-gaap:DebtInstrumentDecreaseForgiveness>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="P05_02_2021To07_31_2021_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis"
      decimals="-5"
      unitRef="Unit_USD">4500000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Note 10&#x2014;Derivative Financial Instruments and Risk Management &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;In 2017, we entered into a cross-currency interest rate swap and an interest rate swap to manage the interest rate risk. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;On July 30, 2020, we terminated these two swaps. The terms of the Amended and Restated Credit Agreement dated as of July 30, 2020, caused those swaps to cease to be effective hedges of the underlying exposures. The termination of the swaps was contracted immediately prior to the end of the second quarter of fiscal 2021 at a cash cost of approximately $0.7&#160;million which was settled in the third quarter of fiscal 2021. Upon termination, the remaining balance of $58,000 in accumulated other comprehensive loss related to the cross-currency interest rate swap was reclassified into earnings as the forecasted foreign currency interest payments will not occur. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The $0.2&#160;million remaining balance in accumulated other comprehensive loss related to the interest rate swap was amortized into earnings through the original term of the hedge relationship as the underlying floating interest rate debt still exists. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;At January&#160;31, 2023, we have fully reclassified all of the net losses on the frozen other comprehensive income balance from accumulated other comprehensive loss to earnings associated with the terminated interest rate swap due to the payment of variable interest associated with the floating interest rate debt. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The following tables present the impact of the derivative instruments in our consolidated financial statements for the years ended January&#160;31, 2023 and 2022: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:41%"/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="18" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Years Ended&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td rowspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 8pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Cash Flow Hedge&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Amount of Gain(Loss)&lt;br/&gt; Recognized in OCI&lt;br/&gt; on&lt;br/&gt; Derivative&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" rowspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Location&#160;of&#160;Gain&#160;(Loss)&lt;br/&gt; Reclassified&#160;from&lt;br/&gt; Accumulated&#160;OCI&#160;into&lt;br/&gt; Income&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Amount of Gain (Loss)&lt;br/&gt; Reclassified from&lt;br/&gt; Accumulated&#160;OCI&#160;into&lt;br/&gt; Income&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;br/&gt; 2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;br/&gt; 2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;br/&gt; 2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;br/&gt; 2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Swap&#160;contracts&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;Other Income&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(59&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(79&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; </us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock>
    <alot:CashPaidTerminationOfSwaps
      contextRef="P08_01_2021To10_30_2021_CashFlowHedgingMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis"
      decimals="-5"
      unitRef="Unit_USD">700000</alot:CashPaidTerminationOfSwaps>
    <us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
      contextRef="P08_01_2021To10_30_2021_CashFlowHedgingMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis"
      decimals="0"
      unitRef="Unit_USD">58000</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
    <us-gaap:OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax
      contextRef="P07_30_2020To07_30_2020_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis"
      decimals="-5"
      unitRef="Unit_USD">200000</us-gaap:OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax>
    <us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The following tables present the impact of the derivative instruments in our consolidated financial statements for the years ended January&#160;31, 2023 and 2022: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:41%"/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="18" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Years Ended&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td rowspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 8pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Cash Flow Hedge&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Amount of Gain(Loss)&lt;br/&gt; Recognized in OCI&lt;br/&gt; on&lt;br/&gt; Derivative&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" rowspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Location&#160;of&#160;Gain&#160;(Loss)&lt;br/&gt; Reclassified&#160;from&lt;br/&gt; Accumulated&#160;OCI&#160;into&lt;br/&gt; Income&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Amount of Gain (Loss)&lt;br/&gt; Reclassified from&lt;br/&gt; Accumulated&#160;OCI&#160;into&lt;br/&gt; Income&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;br/&gt; 2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;br/&gt; 2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;br/&gt; 2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;br/&gt; 2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Swap&#160;contracts&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;Other Income&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(59&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(79&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;  </us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
      contextRef="P02_01_2022To01_31_2023_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
      contextRef="P02_01_2021To01_31_2022_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax>
    <us-gaap:DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI contextRef="P02_01_2022To01_31_2023_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis">Other Income</us-gaap:DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI>
    <us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
      contextRef="P02_01_2022To01_31_2023_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis"
      decimals="-3"
      unitRef="Unit_USD">-59000</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
    <us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
      contextRef="P02_01_2021To01_31_2022_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis"
      decimals="-3"
      unitRef="Unit_USD">-79000</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
    <alot:DisclosureForEmployeeRetentionCreditTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 11&#x2014;Employee Retention Credit &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The CARES Act provides an employee retention credit (&#x201c;ERC&#x201d;) that is a refundable tax credit against certain employer taxes. On December&#160;27, 2020, Congress enacted the Taxpayer Certainty and Disaster Tax Relief Act of 2020, which amended and extended ERC availability under Section&#160;2301 of the CARES Act. Before the enactment of the Taxpayer Certainty and Disaster Tax Relief Act of 2020, we were ineligible for the ERC because we received the PPP Loan. Following enactment of the Taxpayer Certainty and Disaster Tax Relief Act of 2020, we and other businesses that received loans under that program became retroactively eligible for the ERC. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;As a result of the foregoing legislation, we were eligible to claim a refundable tax credit against the employer share of Social Security taxes equal to seventy percent (70%) of the qualified wages that we paid to our employees between December&#160;31, 2020 and June&#160;30, 2021. Qualified wages are limited to $10,000&#160;per employee per calendar quarter in 2021 for a maximum ERC per employee of $7,000&#160;per calendar quarter in 2021. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;We evaluated our eligibility for the ERC in the second quarter of calendar year 2021&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;. In order to qualify for the ERC, we needed to experience a &lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;20&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;% reduction in gross receipts from either (1)&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;the same quarter in calendar year 2019&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt; or (2)&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;the immediately preceding quarter to the corresponding calendar quarter in 2019&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;. We determined that we qualified for the employee retention credit under the first scenario for wages paid in calendar year 2020&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt; and the first calendar quarter of 2021&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;. In the second quarter of the current year, we amended certain payroll tax filings and applied for a refund of $&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;3.1&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;million. Since there is no US&#160;GAAP guidance for &lt;/div&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;for-profit&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt; business entities that receive government assistance that is not in the form of a loan, an income tax credit or revenue from a contract with a customer, we determined the appropriate accounting treatment by analogy to other guidance. We accounted for the&#160;employee&#160;retention&#160;credit&#160;by analogy to International Accounting Standards (IAS) 20, Accounting for Government Grants and Disclosure of Government Assistance, of &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;International Financial Reporting Standards (IFRS). Under an IAS 20 analogy, a business entity would recognize the credit on a systematic basis over the periods in which the entity recognizes the payroll expenses for which the grant (i.e., tax credit) is intended to compensate when there is reasonable assurance (i.e., it is probable) that the entity will comply with any conditions attached to the grant and the grant (i.e., tax credit) will be received. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;We recorded a $&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;3.1&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;million receivable in the second quarter of fiscal 2022&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt; for the ERC receivable, which was outstanding as of January&#160;31&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;, 2022&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt; and is included as such in the accompanying consolidated balance sheet. The $&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;3.1&lt;/div&gt;&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;mil&lt;/div&gt;lion of ERCs was recognized as a reduction in employer payroll taxes and allocated to the financial statement captions from which the employee&#x2019;s taxes were originally incurred. As a result, we recorded a reduction in expenses of $1.7&#160;million in cost of revenue, $0.8&#160;million in selling and marketing, $0.3&#160;million in research and development and $0.3&#160;million in general and administrative which is reflected in the accompanying consolidated income statement for the year ended January&#160;31, 2022. On March&#160;22, 2022, we received the $3.1&#160;million for the ERC. &lt;/div&gt;</alot:DisclosureForEmployeeRetentionCreditTextBlock>
    <alot:PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages
      contextRef="P01_01_2021To06_30_2021_CaresActMemberusgaapUnusualOrInfrequentItemAxis"
      decimals="2"
      unitRef="Unit_pure">-0.70</alot:PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages>
    <alot:ThresholdQualifiedWagesPerEmployeePerCalendarQuarter
      contextRef="P01_01_2021To06_30_2021_CaresActMemberusgaapUnusualOrInfrequentItemAxis"
      decimals="-3"
      unitRef="Unit_USD">10000000</alot:ThresholdQualifiedWagesPerEmployeePerCalendarQuarter>
    <alot:MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter
      contextRef="P01_01_2021To06_30_2021_CaresActMemberusgaapUnusualOrInfrequentItemAxis"
      decimals="-3"
      unitRef="Unit_USD">7000000</alot:MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter>
    <alot:PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit
      contextRef="P07_01_2021To07_31_2021_CaresActMemberusgaapUnusualOrInfrequentItemAxis"
      decimals="2"
      unitRef="Unit_pure">0.20</alot:PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit>
    <alot:EmployeeRetentionCreditReceived
      contextRef="P03_22_2022To03_22_2022_CaresActMemberusgaapUnusualOrInfrequentItemAxis_PrepaidExpensesAndOtherCurrentAssetsMemberusgaapBalanceSheetLocationAxis"
      decimals="-5"
      unitRef="Unit_USD">3100000</alot:EmployeeRetentionCreditReceived>
    <alot:ErcReceivables
      contextRef="PAsOn10_30_2021"
      decimals="-5"
      unitRef="Unit_USD">3100000</alot:ErcReceivables>
    <alot:EmployeeRetentionCredit
      contextRef="P02_01_2022To01_31_2023_PrepaidExpensesAndOtherCurrentAssetsMemberusgaapBalanceSheetLocationAxis"
      decimals="-5"
      unitRef="Unit_USD">3100000</alot:EmployeeRetentionCredit>
    <alot:EmployeeRetentionCreditReceivables
      contextRef="P10_30_2021To10_30_2021_CostOfSalesMemberusgaapIncomeStatementLocationAxis"
      decimals="-5"
      unitRef="Unit_USD">1700000</alot:EmployeeRetentionCreditReceivables>
    <alot:EmployeeRetentionCreditReceivableSellingAndMarketing
      contextRef="P02_01_2022To01_31_2023_SellingAndMarketingExpenseMemberusgaapIncomeStatementLocationAxis"
      decimals="-5"
      unitRef="Unit_USD">800000</alot:EmployeeRetentionCreditReceivableSellingAndMarketing>
    <alot:EmployeeRetentionCreditReceivableResearchAndDevelopment
      contextRef="P10_30_2021To10_30_2021_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis"
      decimals="-5"
      unitRef="Unit_USD">300000</alot:EmployeeRetentionCreditReceivableResearchAndDevelopment>
    <alot:EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses
      contextRef="P02_01_2022To01_31_2023_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis"
      decimals="-5"
      unitRef="Unit_USD">300000</alot:EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses>
    <alot:ErcReceivables
      contextRef="PAsOn03_22_2022"
      decimals="-5"
      unitRef="Unit_USD">3100000</alot:ErcReceivables>
    <alot:DisclosureForTheHoneywellRoyaltyObligationTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 12&#x2014;Royalty Obligation &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;In fiscal 2018, AstroNova, Inc. entered into an Asset Purchase and License Agreement with Honeywell International, Inc. to acquire an exclusive, perpetual, world-wide license to manufacture Honeywell&#x2019;s narrow-format flight deck printers for two aircraft families along with certain inventory used in the manufacturing of the licensed printers. The purchase price included a guaranteed minimum royalty payment of $15.0&#160;million, to be paid in quarterly installments over a &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;ten-year&lt;/div&gt; period. Royalty payments are based on gross revenues from the sales of the printers, paper and repair services of the licensed products. The royalty rates vary based on the year in which they are paid or earned and product sold or service provided, and range from single-digit to mid double-digit percentages of gross revenue. &lt;/div&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;text-indent: 0px;;display:inline;"&gt;The guaranteed minimum royalty payment obligation was recorded at the present value of the minimum annual royalty payments. As of January&#160;31, 2023, we had paid an aggregate of $&lt;/div&gt;&lt;/div&gt;9.5&#160;million of the guaranteed minimum royalty obligation. At January&#160;31, 2023, the current portion of the outstanding guaranteed minimum royalty obligation of $1.6&#160;million is to be paid over the next twelve months and is reported as a current liability and the remainder of $3.0&#160;million is reported as a long-term liability on our consolidated balance sheet. In addition to the guaranteed minimum royalty payments, for the periods ended January&#160;31, 2023 and January&#160;31, 2022, we also incurred excess royalty expense of $1.3&#160;million and $0.5&#160;million, respectively, which is included in cost of revenue in our consolidated statements of income. A total of $0.4&#160;million of excess royalty is payable and reported as a current liability on our consolidated balance sheet at January&#160;31, 2023.&lt;/div&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;In fiscal 2023, AstroNova, Inc. entered into a second Asset Purchase and License Agreement with Honeywell International, Inc. as further discussed in Note 2. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; </alot:DisclosureForTheHoneywellRoyaltyObligationTextBlock>
    <alot:MinimumRoyaltyPaymentObligation
      contextRef="PAsOn01_31_2018_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis"
      decimals="-5"
      unitRef="Unit_USD">15000000</alot:MinimumRoyaltyPaymentObligation>
    <alot:PaymentTermPeriod contextRef="P01_31_2018To01_31_2018_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis">P10Y</alot:PaymentTermPeriod>
    <alot:GuaranteedMinimumRoyaltyPayments
      contextRef="P02_01_2022To01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">9500000</alot:GuaranteedMinimumRoyaltyPayments>
    <alot:RoyaltyObligationCurrent
      contextRef="PAsOn01_31_2023_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis"
      decimals="-5"
      unitRef="Unit_USD">1600000</alot:RoyaltyObligationCurrent>
    <alot:RoyaltyObligationNonCurrent
      contextRef="PAsOn01_31_2023_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis"
      decimals="-5"
      unitRef="Unit_USD">3000000</alot:RoyaltyObligationNonCurrent>
    <alot:ExcessRoyaltyPayments
      contextRef="P02_01_2022To01_31_2023_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis"
      decimals="-5"
      unitRef="Unit_USD">1300000</alot:ExcessRoyaltyPayments>
    <alot:ExcessRoyaltyPayments
      contextRef="P02_01_2021To01_31_2022_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis"
      decimals="-5"
      unitRef="Unit_USD">500000</alot:ExcessRoyaltyPayments>
    <alot:AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue
      contextRef="PAsOn01_31_2023_HoneywellAssetPurchaseAndLicenseAgreementMemberusgaapTypeOfArrangementAxis"
      decimals="-5"
      unitRef="Unit_USD">400000</alot:AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue>
    <us-gaap:LesseeOperatingLeasesTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 13&#x2014;Leases &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"&gt;We enter into lease contracts for certain of our facilities at various locations worldwide. Our leases have remaining lease terms of one to six years, some of which include options to extend the lease term for periods of up to five years when it is reasonably certain that we will exercise such options. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Balance sheet and other information related to our leases is as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:43%"/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 8pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Operating Leases&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Balance&#160;Sheet&#160;Classification&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;br/&gt; 2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;br/&gt; 2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Lease Assets&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom;white-space:nowrap;text-align:center;"&gt;Right&#160;of&#160;Use&#160;Assets&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;794&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,094&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Lease Liabilities&#x2014;Current&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom;white-space:nowrap;text-align:center;"&gt;Other&#160;Accrued&#160;Expenses&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;275&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;327&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Lease Liabilities&#x2014;Long Term&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom;white-space:nowrap;text-align:center;"&gt;Lease Liabilities&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;555&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;808&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="clear:both;max-height:0pt;"/&gt;&lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Lease cost information is as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 41%;"/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; border-bottom: 1pt solid rgb(0, 0, 0);"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating Leases&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"/&gt;(In thousands)&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Statement&#160;of&#160;Income&#160;Classification&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Operating Lease Costs&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;width:4%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom;white-space:nowrap;text-align:center;"&gt;&lt;div style="line-height: normal; margin-bottom: 0px; margin-top: 0px;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; text-align: right;"&gt;General&#160;and&#160;Administrative&#160;Expense&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="line-height: normal; margin-bottom: 0px; margin-top: 0px;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom;;text-align:right;;width:4%;"&gt;460&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom;;text-align:right;;width:4%;"&gt;510&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;  &lt;div style="text-indent: 4%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;At January&#160;31, 2023, maturities of operating lease liabilities &lt;div style="display:inline;"&gt;are &lt;/div&gt;as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:89%"/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom;white-space:nowrap"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; font-size: 8pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2024&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;302&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2025&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;199&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2026&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;154&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2027&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;149&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2028&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;92&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Thereafter&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total Lease Payments&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;896&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Less: Imputed Interest&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(66&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total Lease Liabilities&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;830&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;As of January&#160;31, 2023, the weighted-average remaining lease term and weighted-average discount rate for our operating leases are 3.8 years and 3.87%, respectively. We calculated the weighted-average discount rate using incremental borrowing rates, which equal the rates of interest that we would pay to borrow funds on a fully collateralized basis over a similar term. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Supplemental cash flow information related to leases is as follows: &lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 78%;"/&gt;
&lt;td style="vertical-align: bottom; width: 7%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align: bottom; width: 7%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(In thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Cash paid for operating lease liabilities&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;314&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;372&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <alot:ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Balance sheet and other information related to our leases is as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:43%"/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 8pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Operating Leases&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Balance&#160;Sheet&#160;Classification&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;br/&gt; 2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;br/&gt; 2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Lease Assets&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom;white-space:nowrap;text-align:center;"&gt;Right&#160;of&#160;Use&#160;Assets&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;794&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,094&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Lease Liabilities&#x2014;Current&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom;white-space:nowrap;text-align:center;"&gt;Other&#160;Accrued&#160;Expenses&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;275&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;327&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Lease Liabilities&#x2014;Long Term&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom;white-space:nowrap;text-align:center;"&gt;Lease Liabilities&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;555&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;808&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</alot:ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">794000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1094000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">275000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">327000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">555000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">808000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:LeaseCostTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Lease cost information is as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 41%;"/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; border-bottom: 1pt solid rgb(0, 0, 0);"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating Leases&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"/&gt;(In thousands)&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Statement&#160;of&#160;Income&#160;Classification&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Operating Lease Costs&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;width:4%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom;white-space:nowrap;text-align:center;"&gt;&lt;div style="line-height: normal; margin-bottom: 0px; margin-top: 0px;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; text-align: right;"&gt;General&#160;and&#160;Administrative&#160;Expense&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="line-height: normal; margin-bottom: 0px; margin-top: 0px;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom;;text-align:right;;width:4%;"&gt;460&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom;;text-align:right;;width:4%;"&gt;510&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseExpense
      contextRef="P02_01_2022To01_31_2023_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">460000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="P02_01_2021To01_31_2022_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">510000</us-gaap:OperatingLeaseExpense>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="text-indent: 4%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;At January&#160;31, 2023, maturities of operating lease liabilities &lt;div style="display:inline;"&gt;are &lt;/div&gt;as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:89%"/&gt;
&lt;td style="vertical-align:bottom;width:7%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom;white-space:nowrap"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; font-size: 8pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2024&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;302&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2025&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;199&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2026&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;154&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2027&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;149&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2028&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;92&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Thereafter&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total Lease Payments&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;896&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Less: Imputed Interest&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(66&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total Lease Liabilities&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;830&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">302000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">199000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">154000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">149000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">92000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">896000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">66000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">830000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1 contextRef="PAsOn01_31_2023">P3Y9M18D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="PAsOn01_31_2023"
      decimals="4"
      unitRef="Unit_pure">0.0387</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Supplemental cash flow information related to leases is as follows: &lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; width: 68%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 78%;"/&gt;
&lt;td style="vertical-align: bottom; width: 7%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align: bottom; width: 7%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(In thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 78%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Cash paid for operating lease liabilities&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;314&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;372&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">314000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">372000</us-gaap:OperatingLeasePayments>
    <us-gaap:ComprehensiveIncomeNoteTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 14&#x2014;Accumulat&lt;div style="display:inline;"&gt;ed O&lt;/div&gt;ther Comprehensive Loss &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The changes in the balance of accumulated other comprehensive loss by component are as follows: &lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 92%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 60%;"/&gt;
&lt;td style="vertical-align: bottom; width: 8%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align: bottom; width: 8%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align: bottom; width: 8%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Foreign&#160;Currency&lt;br/&gt; Translation&lt;br/&gt; Adjustments&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Net&lt;br/&gt; Unrealized&lt;br/&gt; Gain&#160;(Losses)&lt;br/&gt; on&#160;Cash&#160;Flow&lt;br/&gt; Hedges&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Total&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance at January&#160;31, 2020&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(985&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(108&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,093&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Comprehensive Income (Loss) before reclassification&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;710&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(239&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;471&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Amounts Reclassified from AOCI to Earnings&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;193&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;193&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Cross-Currency Interest Rate Swap Termination&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;45&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;45&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Comprehensive Income (Loss)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;710&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;709&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance at January&#160;31, 2021&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(275&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(109&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(384&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Comprehensive Loss before reclassification&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,426&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,426&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Amounts Reclassified from AOCI to Earnings&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;62&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;62&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Comprehensive Income (Loss)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,426&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;62&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,364&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance at January&#160;31, 2022&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,701&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(47&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,748&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Comprehensive Income (Loss) before reclassification&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(537&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(537&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Amounts reclassified from AOCI to Earnings&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;47&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;47&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Comprehensive Income (Loss)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(537&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;47&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(490&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance at January&#160;31, 2023&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,238&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,238&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/&gt;&lt;div/&gt;&lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The amounts presented above in other comprehensive income (loss) are net of taxes except for translation adjustments associated with our German, Danish and Shanghai subsidiaries. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ComprehensiveIncomeNoteTextBlock>
    <us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The changes in the balance of accumulated other comprehensive loss by component are as follows: &lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 92%; border: 0px; margin: 0px auto; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 60%;"/&gt;
&lt;td style="vertical-align: bottom; width: 8%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align: bottom; width: 8%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align: bottom; width: 8%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Foreign&#160;Currency&lt;br/&gt; Translation&lt;br/&gt; Adjustments&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Net&lt;br/&gt; Unrealized&lt;br/&gt; Gain&#160;(Losses)&lt;br/&gt; on&#160;Cash&#160;Flow&lt;br/&gt; Hedges&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom: 1pt solid rgb(0, 0, 0);;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Total&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance at January&#160;31, 2020&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(985&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(108&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,093&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Comprehensive Income (Loss) before reclassification&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;710&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(239&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;471&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Amounts Reclassified from AOCI to Earnings&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;193&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;193&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Cross-Currency Interest Rate Swap Termination&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;45&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;45&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Comprehensive Income (Loss)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;710&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;709&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance at January&#160;31, 2021&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(275&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(109&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(384&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Comprehensive Loss before reclassification&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,426&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,426&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Amounts Reclassified from AOCI to Earnings&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;62&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;62&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Comprehensive Income (Loss)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,426&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;62&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,364&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance at January&#160;31, 2022&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,701&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(47&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,748&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Comprehensive Income (Loss) before reclassification&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(537&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(537&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Amounts reclassified from AOCI to Earnings&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;47&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;47&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Comprehensive Income (Loss)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(537&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;47&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(490&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 60%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance at January&#160;31, 2023&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,238&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,238&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 60%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 8%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-985000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2020_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-108000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-1093000</us-gaap:StockholdersEquity>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="P02_01_2020To01_31_2021_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">710000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="P02_01_2020To01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-239000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="P02_01_2020To01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">471000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="P02_01_2020To01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-193000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="P02_01_2020To01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-193000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <alot:UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss
      contextRef="P02_01_2020To01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-45000</alot:UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss>
    <alot:UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss
      contextRef="P02_01_2020To01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-45000</alot:UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2020To01_31_2021_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">710000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2020To01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-1000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2020To01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">709000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2021_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-275000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2021_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-109000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2021_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-384000</us-gaap:StockholdersEquity>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="P02_01_2021To01_31_2022_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-1426000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="P02_01_2021To01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-1426000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="P02_01_2021To01_31_2022_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-62000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="P02_01_2021To01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-62000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2021To01_31_2022_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-1426000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2021To01_31_2022_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">62000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2021To01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-1364000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2022_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-1701000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2022_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-47000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2022_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-1748000</us-gaap:StockholdersEquity>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="P02_01_2022To01_31_2023_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-537000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="P02_01_2022To01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-537000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="P02_01_2022To01_31_2023_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-47000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="P02_01_2022To01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-47000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2022To01_31_2023_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-537000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2022To01_31_2023_AccumulatedGainLossNetCashFlowHedgeParentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">47000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="P02_01_2022To01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-490000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2023_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-2238000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn01_31_2023_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-2238000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Note 15&#x2014;Shareholders&#x2019; Equity &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-weight:bold;display:inline;"&gt; &lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;During fiscal years 2023 and 2022, certain of our employees delivered a total of 17,752 and 27,222 shares, respectively, of our common stock to satisfy the exercise price and related taxes for stock options exercised and restricted stock vesting. The shares delivered were valued at a total of $0.3&#160;million and $0.4&#160;millio&lt;div style="display:inline;"&gt;n, resp&lt;/div&gt;ectively, and are included in treasury stock in the accompanying consolidated balance sheets&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt; a&lt;/div&gt;t January&#160;31, 2023 and 2022. These transactions did not impact the number of shares authorized for repurchase under our current repurchase program. &lt;/div&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <alot:StockDeliveredDuringPeriodSharesStockOptionsExercise
      contextRef="P02_01_2022To01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">17752</alot:StockDeliveredDuringPeriodSharesStockOptionsExercise>
    <alot:StockDeliveredDuringPeriodSharesStockOptionsExercise
      contextRef="P02_01_2021To01_31_2022"
      decimals="INF"
      unitRef="Unit_shares">27222</alot:StockDeliveredDuringPeriodSharesStockOptionsExercise>
    <alot:StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount
      contextRef="P02_01_2022To01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">300000</alot:StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount>
    <alot:StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount
      contextRef="P02_01_2021To01_31_2022"
      decimals="-5"
      unitRef="Unit_USD">400000</alot:StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 16&#x2014;Share-Based Compensation &lt;/div&gt;&lt;/div&gt;&lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The Company maintains the following share-based compensation plans: &lt;/div&gt;&lt;div style="margin-top:18pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Stock Plans: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We have one equity incentive plan from which we are authorized to grant equity awards, the AstroNova, Inc. 2018 Equity Incentive Plan (the &#x201c;2018 Plan&#x201d;). The 2018 Plan provides for, among other things, the issuance of awards, including incentive stock options, &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-qualified&lt;/div&gt; stock options, stock appreciation rights, time-based restricted stock units (&#x201c;RSUs&#x201d;), or performance-based restricted stock units (&#x201c;PSUs&#x201d;) and restricted stock awards (RSAs). The 2018 Plan authorizes the issuance of up to 950,000 shares of common stock, plus an additional number of shares equal to the number of shares subject to awards granted under the previous equity incentive plans that are forfeited, cancelled, satisfied without the issuance of stock, otherwise terminated (other than by exercise), or, for shares of stock issued pursuant to any unvested award, that are reacquired by us at not more than the grantee&#x2019;s purchase price (other than by exercise). Under the 2018 Plan, all awards to employees generally have a minimum vesting period of one year. Options granted under the 2018 Plan must be issued at an exercise price of not less than the fair market value of our common stock on the date of grant and expire after ten years. Under the 2018 Plan, there were 124,962 unvested RSUs; 128,793 unvested PSUs; 21,172 unvested RSAs and options to purchase an aggregate of 135,500 shares outstanding as of January&#160;31, 2023. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;In addition to the 2018 Plan, we previously granted equity awards under our 2015 Equity Incentive Plan (the &#x201c;2015 Plan&#x201d;) and our 2007 Equity Incentive Plan (the &#x201c;2007 Plan&#x201d;). No new awards may be issued under either the 2007 or 2015 Plans, but outstanding awards will continue to be governed by those plans. As of January&#160;31, 2023, options to purchase an aggregate of 276,574 shares were outstanding under the 2007 Plan and options to purchase an aggregate of 135,125 shares were outstanding under the 2015 Plan. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We also have a &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Non-Employee&lt;/div&gt; Director Annual Compensation Program (the &#x201c;Program&#x201d;), under which each of our &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-employee&lt;/div&gt; directors automatically receives a grant of restricted stock on the date of their &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;re-election&lt;/div&gt; to our board of directors. The number of whole shares granted is equal to the number calculated by dividing the stock component of the director compensation amount determined by the compensation committee for that year by the fair market value of our stock on that day. The value of the restricted stock award for fiscal 2023 was $65,000. Shares of restricted stock granted under the Program become vested on the first anniversary of the date of grant, conditi&lt;div style="display:inline;"&gt;one&lt;/div&gt;d upon the recipient&#x2019;s continued service on our board of directors through that date.&lt;/div&gt;&lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"/&gt;&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;;text-indent: 0px;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Share-Based Compensation: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Share-based compensation expense has been recognized as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:70%"/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Years&#160;Ended&#160;January&#160;31&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Stock Options&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;210&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;517&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Restricted Stock Awards and Restricted Stock Units&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,271&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,266&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,285&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Employee Stock Purchase Plan&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;17&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;17&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,290&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,493&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,819&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%; text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Stock Options: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;  &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Aggregated information regarding stock options granted under the plans is summarized below: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 72%;"/&gt;
&lt;td style="vertical-align: bottom; width: 6%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align: bottom; width: 6%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Number&lt;br/&gt; of&#160;Shares&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-&lt;br/&gt; Average&lt;br/&gt; Exercise&lt;br/&gt; Price Per&lt;br/&gt; Share&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Outstanding, January&#160;31, 2020&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;679,044&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14.46&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Granted&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Exercised&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,200&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7.60&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Forfeited&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(54,361&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12.89&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Cancelled&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,400&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7.36&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 72%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Outstanding, January&#160;31, 2021&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;622,083&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14.63&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Granted&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Exercised&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(6,425&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9.34&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Forfeited&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(17,615&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;15.09&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Cancelled&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 72%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Outstanding, January&#160;31, 2022&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;598,043&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14.67&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Granted&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Exercised&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(42,944&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8.74&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Forfeited&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(5,500&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;15.42&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Cancelled&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,400&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8.09&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 72%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Outstanding, January&#160;31, 2023&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;547,199&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;15.16&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 72%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;   &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Set forth below is a summary of options outstanding at January&#160;31, 2023: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 34%;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td colspan="12" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid; white-space: nowrap;;text-align:center;"&gt;&lt;div style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Outstanding&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Exercisable&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid; white-space: nowrap;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Range of&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Exercise prices&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Number&#160;of&lt;br/&gt;Shares&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Exercise&#160;Price&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&#160;Life&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Number&#160;of&lt;br/&gt;Shares&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Exercise&#160;Price&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Life&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:34%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 34%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;$5.00-10.00&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 34%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;$10.01-15.00&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;332,849&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13.68&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2.9&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;332,849&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13.68&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2.9&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 34%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;$15.01-20.00&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;214,350&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;17.45&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4.8&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;214,350&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;17.45&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4.8&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 34%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 34%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;547,199&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;15.16&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3.7&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;547,199&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;15.16&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3.7&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 34%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;No options were granted during fiscal 2023 or fiscal 2022. As of January&#160;31, 2023, there was no unrecognized compensation expense related to the unvested stock options granted under the plans&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;  &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;As of January&#160;31, 2023, the aggregate intrinsic value (the aggregate difference between the closing stock price of our common stock on January&#160;31, 2023, and the exercise price of the outstanding options) that would have been received by the option holders if all options had been exercised was $50,000 for all exercisable options and all options outstanding. The total aggregate intrinsic value of options exercised during fiscal 2023, 2022 and 2021 was $200,000, $26,000, and $4,000, &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;respectively. &lt;/div&gt;&lt;/div&gt;&lt;br/&gt;&lt;/div&gt;&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;;text-indent: 0px;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Restricted Stock Units, Performance-Based Restricted Stock Units and Restricted Stock Awards : &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Aggregated information regarding RSUs, PSUs and RSAs granted under the Plan is summarized below: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:55%"/&gt;
&lt;td style="vertical-align:bottom;width:14%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:14%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;RSUs,&#160;PSUs&#160;&amp;amp;&lt;br/&gt; RSAs&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-Average&lt;br/&gt; Grant&#160;Date&#160;Fair&#160;Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Outstanding at January&#160;31, 2020&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;134,634&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;16.79&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Granted&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;245,131&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7.61&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Vested&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(64,997&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;17.28&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Forfeited&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(117,355&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8.83&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Outstanding at January&#160;31, 2021&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;197,413&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9.96&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Granted&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;151,406&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14.51&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Vested&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(126,939&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;10.43&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Forfeited&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(900&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14.26&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Outstanding at January&#160;31, 2022&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;220,980&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13.23&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Granted&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;141,371&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12.70&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Vested&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(85,324&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13.45&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Forfeited&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,100&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13.25&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Outstanding at January&#160;31, 2023&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;274,927&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12.82&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;As of January&#160;31, 2023, there was $2.0&#160;million of unrecognized compensation expense related to unvested RSUs, PSUs and RSAs. This expense is expected to be recognized over a weighted average period of 1.3 years. &lt;/div&gt; &lt;div style="margin-top:18pt; margin-bottom:0pt; margin-left:4%; font-size:10pt; font-family:Times New Roman"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Employee Stock Purchase Plan (ESPP): &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;On June 7, 2022, we adopted the AstroNova Inc. 2022 Employee Stock Purchase Plan (&#x201c;2022 ESPP&#x201d;) to replace our previous Employee Stock Purchase Plan (the &#x201c;Prior ESPP&#x201d;). The 2022 ESPP allows eligible employees to purchase shares of common stock at a 15% discount from fair value on the first or last day of an offering period, whichever is less. A total of 40,000 shares were reserved for issuance under this plan and 5,045 shares were purchased under the 2022 ESSP during the year ended January&#160;31, 2023. During the periods ended January&#160;31, 2023 and January&#160;31, 2022, there were 1,550 and 8,092 shares, respectively, purchased under the Prior ESPP, and no additional purchases may be made under the Prior ESPP. As of January&#160;31, 2023, 34,955 shares remain available for purchase under the 2022 ESPP. &lt;/div&gt; </us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="PAsOn01_31_2023_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis"
      decimals="INF"
      unitRef="Unit_shares">950000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="PAsOn01_31_2023_RestrictedStockUnitsRSUMemberusgaapAwardTypeAxis_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis"
      decimals="INF"
      unitRef="Unit_shares">124962</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="PAsOn01_31_2023_PerformanceSharesMemberusgaapAwardTypeAxis_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis"
      decimals="INF"
      unitRef="Unit_shares">128793</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="PAsOn01_31_2023_RestrictedStockMemberusgaapAwardTypeAxis_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis"
      decimals="INF"
      unitRef="Unit_shares">21172</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn01_31_2023_TwoThousandEighteenEquityIncentivePlanMemberusgaapPlanNameAxis"
      decimals="INF"
      unitRef="Unit_shares">135500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn01_31_2023_TwoThousandSevenEquityIncentivePlanMemberusgaapPlanNameAxis"
      decimals="INF"
      unitRef="Unit_shares">276574</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn01_31_2023_RestrictedStockMemberusgaapAwardTypeAxis_TwoThousandFifteenEquityIncentivePlanMemberusgaapPlanNameAxis"
      decimals="INF"
      unitRef="Unit_shares">135125</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:RestrictedStockExpense
      contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardMemberusgaapAwardTypeAxis"
      decimals="0"
      unitRef="Unit_USD">65000</us-gaap:RestrictedStockExpense>
    <us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Share-based compensation expense has been recognized as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:70%"/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Years&#160;Ended&#160;January&#160;31&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Stock Options&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;210&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;517&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Restricted Stock Awards and Restricted Stock Units&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,271&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,266&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,285&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Employee Stock Purchase Plan&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;17&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;17&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,290&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,493&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,819&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock>
    <us-gaap:StockOptionPlanExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">7000</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">210000</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">517000</us-gaap:StockOptionPlanExpense>
    <us-gaap:RestrictedStockExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1271000</us-gaap:RestrictedStockExpense>
    <us-gaap:RestrictedStockExpense
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1266000</us-gaap:RestrictedStockExpense>
    <us-gaap:RestrictedStockExpense
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1285000</us-gaap:RestrictedStockExpense>
    <alot:EmployeeStockPurchasePlanExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">12000</alot:EmployeeStockPurchasePlanExpense>
    <alot:EmployeeStockPurchasePlanExpense
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">17000</alot:EmployeeStockPurchasePlanExpense>
    <alot:EmployeeStockPurchasePlanExpense
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">17000</alot:EmployeeStockPurchasePlanExpense>
    <us-gaap:ShareBasedCompensation
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1290000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1493000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1819000</us-gaap:ShareBasedCompensation>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Aggregated information regarding stock options granted under the plans is summarized below: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 72%;"/&gt;
&lt;td style="vertical-align: bottom; width: 6%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align: bottom; width: 6%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Number&lt;br/&gt; of&#160;Shares&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-&lt;br/&gt; Average&lt;br/&gt; Exercise&lt;br/&gt; Price Per&lt;br/&gt; Share&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Outstanding, January&#160;31, 2020&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;679,044&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14.46&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Granted&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Exercised&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,200&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7.60&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Forfeited&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(54,361&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12.89&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Cancelled&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,400&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7.36&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 72%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Outstanding, January&#160;31, 2021&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;622,083&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14.63&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Granted&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Exercised&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(6,425&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9.34&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Forfeited&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(17,615&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;15.09&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Cancelled&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 72%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Outstanding, January&#160;31, 2022&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;598,043&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14.67&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Granted&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Exercised&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(42,944&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8.74&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Forfeited&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(5,500&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;15.42&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Cancelled&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,400&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8.09&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 72%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 72%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Options Outstanding, January&#160;31, 2023&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;547,199&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;15.16&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 72%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 6%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; </us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn01_31_2020"
      decimals="INF"
      unitRef="Unit_shares">679044</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="PAsOn01_31_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">14.46</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="P02_01_2020To01_31_2021"
      decimals="INF"
      unitRef="Unit_shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="P02_01_2020To01_31_2021"
      decimals="0"
      unitRef="Unit_USD_per_Share">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="P02_01_2020To01_31_2021"
      decimals="INF"
      unitRef="Unit_shares">1200</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="P02_01_2020To01_31_2021"
      decimals="2"
      unitRef="Unit_USD_per_Share">7.6</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="P02_01_2020To01_31_2021"
      decimals="INF"
      unitRef="Unit_shares">54361</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="P02_01_2020To01_31_2021"
      decimals="2"
      unitRef="Unit_USD_per_Share">12.89</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod
      contextRef="P02_01_2020To01_31_2021"
      decimals="INF"
      unitRef="Unit_shares">1400</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="P02_01_2020To01_31_2021"
      decimals="2"
      unitRef="Unit_USD_per_Share">7.36</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn01_31_2021"
      decimals="INF"
      unitRef="Unit_shares">622083</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="PAsOn01_31_2021"
      decimals="2"
      unitRef="Unit_USD_per_Share">14.63</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="P02_01_2021To01_31_2022"
      decimals="INF"
      unitRef="Unit_shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="P02_01_2021To01_31_2022"
      decimals="0"
      unitRef="Unit_USD_per_Share">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="P02_01_2021To01_31_2022"
      decimals="INF"
      unitRef="Unit_shares">6425</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="P02_01_2021To01_31_2022"
      decimals="2"
      unitRef="Unit_USD_per_Share">9.34</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="P02_01_2021To01_31_2022"
      decimals="INF"
      unitRef="Unit_shares">17615</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="P02_01_2021To01_31_2022"
      decimals="2"
      unitRef="Unit_USD_per_Share">15.09</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod
      contextRef="P02_01_2021To01_31_2022"
      decimals="INF"
      unitRef="Unit_shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="P02_01_2021To01_31_2022"
      decimals="0"
      unitRef="Unit_USD_per_Share">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn01_31_2022"
      decimals="INF"
      unitRef="Unit_shares">598043</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="PAsOn01_31_2022"
      decimals="2"
      unitRef="Unit_USD_per_Share">14.67</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="P02_01_2022To01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="P02_01_2022To01_31_2023"
      decimals="0"
      unitRef="Unit_USD_per_Share">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="P02_01_2022To01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">42944</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="P02_01_2022To01_31_2023"
      decimals="2"
      unitRef="Unit_USD_per_Share">8.74</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="P02_01_2022To01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">5500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="P02_01_2022To01_31_2023"
      decimals="2"
      unitRef="Unit_USD_per_Share">15.42</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod
      contextRef="P02_01_2022To01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">2400</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="P02_01_2022To01_31_2023"
      decimals="2"
      unitRef="Unit_USD_per_Share">8.09</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">547199</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="PAsOn01_31_2023"
      decimals="2"
      unitRef="Unit_USD_per_Share">15.16</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Set forth below is a summary of options outstanding at January&#160;31, 2023: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 34%;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td colspan="12" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid; white-space: nowrap;;text-align:center;"&gt;&lt;div style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Outstanding&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Exercisable&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid; white-space: nowrap;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Range of&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Exercise prices&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Number&#160;of&lt;br/&gt;Shares&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Exercise&#160;Price&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&#160;Life&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Number&#160;of&lt;br/&gt;Shares&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Exercise&#160;Price&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Life&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:34%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 34%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;$5.00-10.00&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 34%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;$10.01-15.00&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;332,849&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13.68&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2.9&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;332,849&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13.68&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2.9&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 34%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;$15.01-20.00&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;214,350&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;17.45&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4.8&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;214,350&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;17.45&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4.8&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 34%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 34%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;547,199&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;15.16&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3.7&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;547,199&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;15.16&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3.7&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 34%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt; </us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="P02_01_2022To01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">5</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="P02_01_2022To01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">10</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="PAsOn01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="INF"
      unitRef="Unit_shares">0</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="PAsOn01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="0"
      unitRef="Unit_USD_per_Share">0</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="PAsOn01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="INF"
      unitRef="Unit_shares">0</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="PAsOn01_31_2023_RangeThreeMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="0"
      unitRef="Unit_USD_per_Share">0</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="P02_01_2022To01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">10.01</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="P02_01_2022To01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">15</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="PAsOn01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="INF"
      unitRef="Unit_shares">332849</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="PAsOn01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">13.68</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2 contextRef="P02_01_2022To01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">P2Y10M24D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="PAsOn01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="INF"
      unitRef="Unit_shares">332849</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="PAsOn01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">13.68</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="P02_01_2022To01_31_2023_RangeFourMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">P2Y10M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="P02_01_2022To01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">15.01</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="P02_01_2022To01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">20</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="PAsOn01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="INF"
      unitRef="Unit_shares">214350</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="PAsOn01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">17.45</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2 contextRef="P02_01_2022To01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">P4Y9M18D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="PAsOn01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="INF"
      unitRef="Unit_shares">214350</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="PAsOn01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">17.45</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="P02_01_2022To01_31_2023_RangeFiveMemberusgaapShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">P4Y9M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">547199</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="PAsOn01_31_2023"
      decimals="2"
      unitRef="Unit_USD_per_Share">15.16</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2 contextRef="P02_01_2022To01_31_2023">P3Y8M12D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="PAsOn01_31_2023"
      decimals="INF"
      unitRef="Unit_shares">547199</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="PAsOn01_31_2023"
      decimals="2"
      unitRef="Unit_USD_per_Share">15.16</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="P02_01_2022To01_31_2023">P3Y8M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="P02_01_2021To01_31_2022"
      decimals="0"
      unitRef="Unit_shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="P02_01_2022To01_31_2023"
      decimals="0"
      unitRef="Unit_shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions
      contextRef="PAsOn01_31_2023_EmployeeStockOptionMemberusgaapAwardTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="PAsOn01_31_2023_EmployeeStockOptionMemberusgaapAwardTypeAxis"
      decimals="0"
      unitRef="Unit_USD">50000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="P02_01_2022To01_31_2023"
      decimals="0"
      unitRef="Unit_USD">200000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="P02_01_2021To01_31_2022"
      decimals="0"
      unitRef="Unit_USD">26000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="P02_01_2020To01_31_2021"
      decimals="0"
      unitRef="Unit_USD">4000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Aggregated information regarding RSUs, PSUs and RSAs granted under the Plan is summarized below: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:55%"/&gt;
&lt;td style="vertical-align:bottom;width:14%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:14%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;RSUs,&#160;PSUs&#160;&amp;amp;&lt;br/&gt; RSAs&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-Average&lt;br/&gt; Grant&#160;Date&#160;Fair&#160;Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Outstanding at January&#160;31, 2020&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;134,634&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;16.79&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Granted&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;245,131&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7.61&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Vested&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(64,997&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;17.28&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Forfeited&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(117,355&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8.83&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Outstanding at January&#160;31, 2021&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;197,413&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9.96&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Granted&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;151,406&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14.51&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Vested&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(126,939&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;10.43&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Forfeited&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(900&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14.26&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Outstanding at January&#160;31, 2022&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;220,980&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13.23&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Granted&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;141,371&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12.70&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Vested&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(85,324&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13.45&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Forfeited&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,100&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13.25&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Outstanding at January&#160;31, 2023&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;274,927&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12.82&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; </us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="PAsOn01_31_2020_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">134634</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="PAsOn01_31_2020_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">16.79</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">245131</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">7.61</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">64997</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">17.28</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">117355</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="P02_01_2020To01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">8.83</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="PAsOn01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">197413</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="PAsOn01_31_2021_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">9.96</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">151406</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">14.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">126939</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">10.43</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">900</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="P02_01_2021To01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">14.26</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="PAsOn01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">220980</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="PAsOn01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">13.23</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">141371</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">12.7</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">85324</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">13.45</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">2100</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="P02_01_2022To01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">13.25</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="PAsOn01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">274927</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="PAsOn01_31_2023_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">12.82</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="PAsOn01_31_2023_RestrictedStockUnitsRSUMemberusgaapAwardTypeAxis"
      decimals="-5"
      unitRef="Unit_USD">2000000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 contextRef="P02_01_2022To01_31_2023_RestrictedStockUnitsRSUMemberusgaapAwardTypeAxis">P1Y3M18D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate
      contextRef="P02_01_2022To01_31_2023_EmployeeStockPurchasePlanMemberusgaapPlanNameAxis"
      decimals="2"
      unitRef="Unit_pure">0.15</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate>
    <alot:ReservationOfSharesUnderEmployeeStockPurchasePlan
      contextRef="P02_01_2022To01_31_2023"
      decimals="0"
      unitRef="Unit_shares">40000</alot:ReservationOfSharesUnderEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="P02_01_2022To01_31_2023_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMemberusgaapPlanNameAxis"
      decimals="0"
      unitRef="Unit_shares">5045</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="P02_01_2022To01_31_2023_PriorEmployeeStockPurchasePlanMemberusgaapPlanNameAxis"
      decimals="0"
      unitRef="Unit_shares">1550</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="P02_01_2021To01_31_2022_PriorEmployeeStockPurchasePlanMemberusgaapPlanNameAxis"
      decimals="0"
      unitRef="Unit_shares">8092</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="PAsOn01_31_2023_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMemberusgaapPlanNameAxis"
      decimals="0"
      unitRef="Unit_shares">34955</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 17&#x2014;Income Taxes &lt;/div&gt;&lt;/div&gt;  &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The components of income (loss) before income taxes are as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:69%"/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Domestic&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,773&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,046&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,193&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Foreign&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,637&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,988&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,372&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,410&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7,034&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,179&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;  &lt;div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;"&gt;&#160;&lt;/div&gt; &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"/&gt; &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The components of the provision for income taxes are as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 70%;"/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:70%"/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Current:&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Federal&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;902&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(183&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,272&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;State&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;313&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;76&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;224&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Foreign&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;870&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;501&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;420&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,085&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;394&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,916&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Deferred:&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Federal&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,053&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;180&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(910&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;State&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(315&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;177&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(189&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Foreign&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;32&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(146&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;78&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,336&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;211&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,021&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;749&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;605&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;895&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Total income tax provision differs from the expected tax provision as a result of the following: &lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:71%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Income Tax Provision at Statutory Rate&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;716&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,477&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;458&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Change in Valuation Allowance&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;182&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;57&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(81&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Foreign Rate Differential&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;157&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;61&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;197&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Change in Reserves Related to ASC 740 Liability&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;93&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(245&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(10&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Denmark Statutory Audit&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;341&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Meals and Entertainment&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Canada Withholding Taxes&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;62&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Global Intangible Low Taxed Income&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Foreign Derived Intangible Income&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(180&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(55&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(150&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;R&amp;amp;D Credits&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(160&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(180&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(157&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Share Based Compensation&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(52&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(95&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;171&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Return to Provision Adjustment&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(22&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;368&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;State Taxes, Net of Federal Tax Effect&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;143&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;28&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;PPP Loan Forgiveness&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(937&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;17&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;749&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;605&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;895&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Our effective tax rate for fiscal 2023 was 22.0% compared to 8.6% in fiscal 2022 and 41.1% in fiscal 2021. The increase in the effective tax rate in fiscal 2023 from fiscal 2022 is primarily related to the absence of the PPP loan forgiveness which is &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;tax-exempt&lt;/div&gt; income that was a &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;one-time&lt;/div&gt; item that reduced the rate in fiscal 2022. Specific items increasing the effective tax rate in fiscal 2023 include the change in reserves related to ASC 740 liability and the increase in the valuation allowance recorded on China net operating losses. This increase was offset by state taxes, return to provision adjustments, share-based compensation, R&amp;amp;D tax credits, and foreign derived intangible income (&#x201c;FDII&#x201d;) deduction. &lt;/div&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The decrease in the effective tax rate in fiscal 2022 from fiscal 2021 is primarily related to the &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;one-time&lt;/div&gt; impact of the PPP loan forgiveness &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;tax-exempt&lt;/div&gt; income. Specific items decreasing the effective tax rate include PPP loan forgiveness &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;tax-exempt&lt;/div&gt; income, R&amp;amp;D tax credits, foreign derived intangible income (&#x201c;FDII&#x201d;) deduction and change in reserves related to ASC 740 liabilities. This decrease was offset by state taxes, return to provision adjustments, and taxes on foreign earnings. &lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;"&gt;&#160;&lt;/div&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"&gt; &lt;/div&gt;&lt;div/&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The components of deferred income tax expense arise from various temporary differences and relate to items included in the statement of income. The tax effects of temporary differences that gave rise to significant portions of the deferred tax assets and liabilities are as follows: &lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 74%;"/&gt;
&lt;td style="vertical-align: bottom; width: 7%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align: bottom; width: 7%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;(In thousands)&lt;/div&gt;&lt;br/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Deferred Tax Assets:&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Inventory&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,710&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,159&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Honeywell Royalty Liability&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,008&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,655&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;State R&amp;amp;D Credits&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,851&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,925&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Share-Based Compensation&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;620&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;593&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Bad Debt&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;180&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;213&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Warranty Reserve&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;258&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;198&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Compensation Accrual&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;248&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;322&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Net Operating Loss&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;135&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;152&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;ASU 842 Adjustment &#x2013; Lease Liability&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;53&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;93&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Unrecognized State Tax Benefits&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;58&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;64&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Foreign Tax Credit&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;154&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;154&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Deferred Service Contract Revenue&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;90&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;61&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Section&#160;174 Capitalization*&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,175&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;281&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;224&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 74%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; text-align: right;"&gt;10,821&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; text-align: right;"&gt;8,813&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Deferred Tax Liabilities:&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Accumulated Tax Depreciation in Excess of Book Depreciation&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,037&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;455&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Intangibles&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;694&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;767&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;ASU 842 Adjustment &#x2013; Lease Liability&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;50&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;90&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;180&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;318&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 74%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; text-align: right;"&gt;1,961&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; text-align: right;"&gt;1,630&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 74%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Subtotal&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;8,860&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;7,183&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="break-inside: avoid; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;
&lt;td style="vertical-align: top; background-color: rgba(255, 255, 255, 0); width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Valuation Allowance&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"&gt;(2,120&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"&gt;(1,778&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 74%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Net Deferred Tax Assets&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;$&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;6,740&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;$&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;5,405&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 74%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:2%;vertical-align:top;text-align:left;"&gt;*&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-align: left; line-height: normal;"&gt;Beginning in fiscal 2023, changes to Section&#160;174 of the Internal Revenue Code made by the Tax Cuts and Jobs Act of 2017 no longer permit an immediate deduction for research and development expenditures in the tax year that such costs are incurred. These costs are capitalized resulting in an increase in deferred tax assets of $1.2&#160;million. &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Deferred taxes are reflected in the consolidated balance sheet as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:78%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Deferred Tax Assets&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;6,907&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,591&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Deferred Tax Liabilities&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(167&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(186&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total Net Deferred Tax Assets&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;6,740&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,405&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The valuation allowances of $2.1&#160;million at January&#160;31, 2023 and $1.8&#160;million at January&#160;31, 2022, relate to Rhode Island research and development tax credit carryforwards, foreign tax credit carryforwards, and China&#x2019;s net operating losses that are expected to expire unutilized. &lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;"&gt;&#160;&lt;/div&gt;&lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"&gt; &lt;/div&gt; &lt;div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;At January&#160;31, 2023, we had net operating loss carryforwards of $0.1&#160;million in China, which expire in 2024 through 2028. We have net operating loss carryforwards of less than $0.1&#160;million in France, which can be carried forward indefinitely. We expect to utilize the net operating loss carryforwards in France before in future tax periods. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;At January&#160;31, 2023, we had state research credit carryforwards of approximately $1.9&#160;million which expire in 2023 through 2030. Additionally, we had $0.2&#160;million of foreign tax credits. We maintain a full valuation allowance against these credits as we expect these credits to expire unused. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We believe that it is reasonably possible that some unrecognized tax benefits, accrued interest and penalties could decrease income tax expense in the next year due to either the review of previously filed tax returns or the expiration of certain statutes of limitation. The changes in the balances of unrecognized tax benefits, excluding interest and penalties are as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:76%"/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance, beginning of the year&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;303&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;384&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;362&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Increases in prior period tax positions&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;24&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;63&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;59&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Increases in current period tax positions&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;136&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;67&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Reductions related to lapse of statutes of limitations&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(49&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(211&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(42&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance, end of the year&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;414&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;303&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;384&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;During fiscal 2023 and 2022, we released $49,000 and $211,000, respectively, of uncertain tax positions including accrued interest and penalties relating to a change in various unrecognized tax positions. The Company has accrued potential interest and penalties of $77,000 included in income taxes payable in the accompanying consolidated balance sheet at the end of January&#160;31, 2023. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The Company and its subsidiaries file income tax returns in U.S. federal jurisdictions, various state jurisdictions, and various foreign jurisdictions. In fiscal 2023, we released $27,000 related to a federal tax exposure for the fiscal 2019 tax year and $22,000 of state nexus positions as a result of the expiration of the statute of limitations. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;U.S. income taxes have not been provided on $8.5&#160;million of undistributed earnings of our foreign subsidiaries since it is our intention to permanently reinvest such earnings offshore. If the earnings were distributed in the form of dividends, the Company would not be subject to U.S. tax as a result of the Tax Act but could be subject to foreign income and withholding taxes. Determination of the amount of this unrecognized deferred income tax liability is not practical. &lt;/div&gt; </us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The components of income (loss) before income taxes are as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:69%"/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Domestic&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,773&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,046&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,193&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Foreign&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,637&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,988&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,372&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,410&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7,034&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,179&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; </us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1773000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">5046000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-1193000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1637000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1988000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">3372000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">3410000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">7034000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">2179000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The components of the provision for income taxes are as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 70%;"/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:70%"/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Current:&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Federal&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;902&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(183&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,272&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;State&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;313&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;76&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;224&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Foreign&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;870&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;501&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;420&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,085&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;394&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,916&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Deferred:&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Federal&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,053&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;180&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(910&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;State&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(315&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;177&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(189&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Foreign&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;32&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(146&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;78&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,336&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;211&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,021&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;749&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;605&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;895&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">902000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-183000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1272000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">313000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">76000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">224000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">870000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">501000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">420000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2085000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">394000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1916000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-1053000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">180000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-910000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-315000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">177000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-189000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">32000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-146000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">78000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-1336000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">211000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-1021000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">749000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">605000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">895000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Total income tax provision differs from the expected tax provision as a result of the following: &lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:71%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Income Tax Provision at Statutory Rate&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;716&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,477&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;458&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Change in Valuation Allowance&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;182&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;57&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(81&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Foreign Rate Differential&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;157&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;61&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;197&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Change in Reserves Related to ASC 740 Liability&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;93&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(245&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(10&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Denmark Statutory Audit&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;341&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Meals and Entertainment&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Canada Withholding Taxes&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;62&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Global Intangible Low Taxed Income&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Foreign Derived Intangible Income&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(180&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(55&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(150&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;R&amp;amp;D Credits&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(160&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(180&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(157&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Share Based Compensation&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(52&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(95&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;171&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Return to Provision Adjustment&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(22&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;368&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;State Taxes, Net of Federal Tax Effect&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;143&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;28&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;PPP Loan Forgiveness&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(937&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;17&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;749&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;605&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;895&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">716000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1477000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">458000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">182000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">57000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-81000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">157000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">61000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">197000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <alot:Incometaxreconciliationchangeinreserves
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">93000</alot:Incometaxreconciliationchangeinreserves>
    <alot:Incometaxreconciliationchangeinreserves
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-245000</alot:Incometaxreconciliationchangeinreserves>
    <alot:Incometaxreconciliationchangeinreserves
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-10000</alot:Incometaxreconciliationchangeinreserves>
    <alot:IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</alot:IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit>
    <alot:IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">0</alot:IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit>
    <alot:IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-341000</alot:IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">9000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">11000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment>
    <alot:IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</alot:IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes>
    <alot:IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">0</alot:IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes>
    <alot:IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-62000</alot:IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes>
    <alot:IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</alot:IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome>
    <alot:IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">0</alot:IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome>
    <alot:IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-14000</alot:IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome>
    <us-gaap:IncomeTaxReconciliationTaxCreditsForeign
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">180000</us-gaap:IncomeTaxReconciliationTaxCreditsForeign>
    <us-gaap:IncomeTaxReconciliationTaxCreditsForeign
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">55000</us-gaap:IncomeTaxReconciliationTaxCreditsForeign>
    <us-gaap:IncomeTaxReconciliationTaxCreditsForeign
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">150000</us-gaap:IncomeTaxReconciliationTaxCreditsForeign>
    <us-gaap:IncomeTaxReconciliationTaxCreditsResearch
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">160000</us-gaap:IncomeTaxReconciliationTaxCreditsResearch>
    <us-gaap:IncomeTaxReconciliationTaxCreditsResearch
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">180000</us-gaap:IncomeTaxReconciliationTaxCreditsResearch>
    <us-gaap:IncomeTaxReconciliationTaxCreditsResearch
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">157000</us-gaap:IncomeTaxReconciliationTaxCreditsResearch>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-52000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-95000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">171000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-22000</us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">368000</us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-2000</us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-2000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">143000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">28000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <alot:IncomeTaxReconciliationPppLoanForgiveness
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">0</alot:IncomeTaxReconciliationPppLoanForgiveness>
    <alot:IncomeTaxReconciliationPppLoanForgiveness
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">-937000</alot:IncomeTaxReconciliationPppLoanForgiveness>
    <alot:IncomeTaxReconciliationPppLoanForgiveness
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">0</alot:IncomeTaxReconciliationPppLoanForgiveness>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">17000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">2000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">13000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">749000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">605000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">895000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="P02_01_2022To01_31_2023"
      decimals="3"
      unitRef="Unit_pure">0.22</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="P02_01_2021To01_31_2022"
      decimals="3"
      unitRef="Unit_pure">0.086</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="P02_01_2020To01_31_2021"
      decimals="3"
      unitRef="Unit_pure">0.411</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock contextRef="P02_01_2022To01_31_2023">The tax effects of temporary differences that gave rise to significant portions of the deferred tax assets and liabilities are as follows: &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 74%;"/&gt;
&lt;td style="vertical-align: bottom; width: 7%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align: bottom; width: 7%;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;(In thousands)&lt;/div&gt;&lt;br/&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Deferred Tax Assets:&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Inventory&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,710&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,159&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Honeywell Royalty Liability&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,008&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,655&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;State R&amp;amp;D Credits&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,851&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,925&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Share-Based Compensation&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;620&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;593&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Bad Debt&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;180&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;213&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Warranty Reserve&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;258&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;198&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Compensation Accrual&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;248&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;322&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Net Operating Loss&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;135&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;152&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;ASU 842 Adjustment &#x2013; Lease Liability&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;53&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;93&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Unrecognized State Tax Benefits&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;58&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;64&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Foreign Tax Credit&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;154&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;154&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Deferred Service Contract Revenue&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;90&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;61&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Section&#160;174 Capitalization*&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,175&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;281&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;224&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 74%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; text-align: right;"&gt;10,821&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; text-align: right;"&gt;8,813&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Deferred Tax Liabilities:&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Accumulated Tax Depreciation in Excess of Book Depreciation&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,037&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;455&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Intangibles&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;694&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;767&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;ASU 842 Adjustment &#x2013; Lease Liability&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;50&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;90&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;180&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;318&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 74%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; text-align: right;"&gt;1,961&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; text-align: right;"&gt;1,630&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 74%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Subtotal&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;8,860&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;7,183&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="break-inside: avoid; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;
&lt;td style="vertical-align: top; background-color: rgba(255, 255, 255, 0); width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Valuation Allowance&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"&gt;(2,120&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"&gt;(1,778&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 74%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 74%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Net Deferred Tax Assets&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;$&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;6,740&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;$&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;5,405&lt;/td&gt;
&lt;td style="white-space: nowrap; vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 74%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0); width: 7%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:2%;vertical-align:top;text-align:left;"&gt;*&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-align: left; line-height: normal;"&gt;Beginning in fiscal 2023, changes to Section&#160;174 of the Internal Revenue Code made by the Tax Cuts and Jobs Act of 2017 no longer permit an immediate deduction for research and development expenditures in the tax year that such costs are incurred. These costs are capitalized resulting in an increase in deferred tax assets of $1.2&#160;million. &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Deferred taxes are reflected in the consolidated balance sheet as follows: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:78%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Deferred Tax Assets&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;6,907&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,591&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Deferred Tax Liabilities&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(167&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(186&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total Net Deferred Tax Assets&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;6,740&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,405&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2710000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">2159000</us-gaap:DeferredTaxAssetsInventory>
    <alot:DeferredTaxAssetsRoyaltyLiability
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">3008000</alot:DeferredTaxAssetsRoyaltyLiability>
    <alot:DeferredTaxAssetsRoyaltyLiability
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">2655000</alot:DeferredTaxAssetsRoyaltyLiability>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1851000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1925000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">620000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">593000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">180000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">213000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">258000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">198000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves>
    <alot:DeferredTaxAssetsCompensationAccruals
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">248000</alot:DeferredTaxAssetsCompensationAccruals>
    <alot:DeferredTaxAssetsCompensationAccruals
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">322000</alot:DeferredTaxAssetsCompensationAccruals>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">135000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">152000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <alot:DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">53000</alot:DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability>
    <alot:DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">93000</alot:DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability>
    <alot:DeferredTaxAssetsUnrecognizedTaxBenefits
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">58000</alot:DeferredTaxAssetsUnrecognizedTaxBenefits>
    <alot:DeferredTaxAssetsUnrecognizedTaxBenefits
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">64000</alot:DeferredTaxAssetsUnrecognizedTaxBenefits>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsForeign
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">154000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsForeign>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsForeign
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">154000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsForeign>
    <alot:DeferredTaxAssetsDeferredServiceContractRevenue
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">90000</alot:DeferredTaxAssetsDeferredServiceContractRevenue>
    <alot:DeferredTaxAssetsDeferredServiceContractRevenue
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">61000</alot:DeferredTaxAssetsDeferredServiceContractRevenue>
    <alot:DeferredTaxAssetsCapitalization
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      id="Fact_75771699"
      unitRef="Unit_USD">1175000</alot:DeferredTaxAssetsCapitalization>
    <alot:DeferredTaxAssetsCapitalization
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      id="Fact_75771700"
      unitRef="Unit_USD">0</alot:DeferredTaxAssetsCapitalization>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">281000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">224000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">10821000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">8813000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1037000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">455000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">694000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">767000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <alot:DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">50000</alot:DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability>
    <alot:DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">90000</alot:DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">180000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">318000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1961000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1630000</us-gaap:DeferredIncomeTaxLiabilities>
    <alot:DeferredTaxAssetsLiabilitiesGross
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">8860000</alot:DeferredTaxAssetsLiabilitiesGross>
    <alot:DeferredTaxAssetsLiabilitiesGross
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">7183000</alot:DeferredTaxAssetsLiabilitiesGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2120000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1778000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">6740000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">5405000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <alot:IncreaseDecreaseInDeferredTaxAssets
      contextRef="P02_01_2022To01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">1200000</alot:IncreaseDecreaseInDeferredTaxAssets>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">6907000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">5591000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxLiabilities
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">167000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">186000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">6740000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">5405000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="PAsOn01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">2100000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="PAsOn01_31_2022"
      decimals="-5"
      unitRef="Unit_USD">1800000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="PAsOn01_31_2023_CNsrtStatementGeographicalAxis"
      decimals="-5"
      unitRef="Unit_USD">100000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <alot:DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod contextRef="P02_01_2022To01_31_2023_CNsrtStatementGeographicalAxis">2024 through 2028</alot:DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="PAsOn01_31_2023_DEsrtStatementGeographicalAxis"
      decimals="-5"
      unitRef="Unit_USD">100000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="PAsOn01_31_2023_TaxCreditsCarryForwardsMemberALOTDetailsOfIncomeTaxBenefitAxis"
      decimals="-5"
      unitRef="Unit_USD">1900000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <alot:DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod contextRef="P02_01_2022To01_31_2023">2023 through 2030</alot:DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsForeign
      contextRef="PAsOn01_31_2023_AdditionalForeignTaxCreditMemberALOTDetailsOfIncomeTaxBenefitAxis"
      decimals="-5"
      unitRef="Unit_USD">200000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsForeign>
    <us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock contextRef="P02_01_2022To01_31_2023">
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:76%"/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:4%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance, beginning of the year&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;303&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;384&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;362&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Increases in prior period tax positions&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;24&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;63&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;59&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Increases in current period tax positions&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;136&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;67&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Reductions related to lapse of statutes of limitations&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(49&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(211&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(42&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance, end of the year&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;414&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;303&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;384&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">303000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="PAsOn01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">384000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="PAsOn01_31_2020"
      decimals="-3"
      unitRef="Unit_USD">362000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">24000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">63000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">59000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">136000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">67000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">5000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">49000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">211000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">42000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">414000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">303000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="PAsOn01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">384000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="0"
      unitRef="Unit_USD">49000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense
      contextRef="P02_01_2021To01_31_2022"
      decimals="0"
      unitRef="Unit_USD">211000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="PAsOn01_31_2023"
      decimals="0"
      unitRef="Unit_USD">77000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="PAsOn01_31_2023_DomesticCountryMemberusgaapIncomeTaxAuthorityAxis"
      decimals="0"
      unitRef="Unit_USD">27000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="P02_01_2022To01_31_2023_DomesticCountryMemberusgaapIncomeTaxAuthorityAxis"
      decimals="0"
      unitRef="Unit_USD">22000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:ForeignEarningsRepatriated
      contextRef="P02_01_2022To01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">8500000</us-gaap:ForeignEarningsRepatriated>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 18&#x2014;Nature of Operations, Segment Reporting and Geographical Information &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Our operations consist of the design, development, manufacture and sale of specialty printers and data acquisition and analysis systems, including both hardware&#160;and software and related consumable supplies. We organize and manage our business as a portfolio of products and services designed around a common theme of data acquisition and information output. We have two reporting segments consistent with our revenue product groups: Product Identification (&#x201c;PI&#x201d;) and Test&#160;&amp;amp; Measurement (&#x201c;T&amp;amp;M&#x201d;). &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Our PI segment produces an array of high-technology digital color and monochrome label printers and mini presses, labeling software and supplies for a variety of commercial industries worldwide and includes our newly acquired Astro Machine. AstroNova&#x2019;s T&amp;amp;M segment produces data acquisition systems used worldwide for a variety of recording, monitoring and troubleshooting applications for many industries including aerospace, automotive, defense, rail, energy, industrial and general manufacturing. The T&amp;amp;M segment also includes our line of aerospace flight deck and cabin printers. &lt;/div&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; font-size: 8pt;"&gt;&#160;&lt;/div&gt; &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"&gt; &lt;/div&gt;  &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Business is conducted in the United States and through foreign branch offices and subsidiaries in Canada, Europe, China, Southeast Asia and Mexico. Manufacturing activities are primarily conducted in the United States. Revenue and service activities outside the United States are conducted through wholly owned entities and, to a lesser extent, through authorized distributors and agents. Transfer prices are intended to produce gross profit margins as would be associated with an arms-length transaction. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The accounting policies of the reporting segments are the same as those described in the summary of significant accounting policies herein. We evaluate segment performance based on the segment profit before corporate and financial administration expenses. &lt;/div&gt;  &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Summarized below are the revenue and segment operating profit (loss) (both in dollars and as a percentage of revenue) for each reporting segment: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 36%;"/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;($ in thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Revenue&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Segment&#160;Operating&#160;Profit&lt;br/&gt;(Loss)&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Segment&#160;Operating&#160;Profit&#160;(Loss)&lt;br/&gt;as&#160;a&#160;% of Revenue&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 36%;"/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Product Identification&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;103,089&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;90,915&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;90,268&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7,889&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;10,411&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12,885&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7.7&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11.5&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14.3&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;T&amp;amp;M&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;39,438&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;26,565&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;25,765&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8,989&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,398&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,032&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;22.8&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12.8&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(4.0&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 36%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;142,527&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;117,480&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;116,033&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;16,878&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13,809&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11,853&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11.8&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11.8&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;10.2&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 36%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Corporate Expenses&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11,435&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,553&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,420&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 36%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Operating Income&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,443&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,256&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,433&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Income (Expense), Net&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,033&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,778&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(254&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 36%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Income Before Income Taxes&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,410&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7,034&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,179&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Income Tax Provision&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;749&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;605&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;895&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 36%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Net Income&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,661&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;6,429&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,284&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 36%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;No customer accounted for greater than 10% of net revenue in fiscal 2023, 2022 or 2021. &lt;/div&gt;  &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Other information by segment is presented below: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:72%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Assets&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Product Identification&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;69,607&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;51,732&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;T&amp;amp;M&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;60,730&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;50,374&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Corporate*&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8,870&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12,849&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;139,207&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;114,955&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt; &lt;div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:2%;vertical-align:top;text-align:left;"&gt;*&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-align: left; line-height: normal;"&gt;Corporate assets consist principally of cash, cash equivalents, deferred tax assets and refunds, and certain prepaid corporate assets. &lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:60%"/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Depreciation and&lt;br/&gt; Amortization&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Capital Expenditures&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Product Identification&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,219&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,157&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,835&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;121&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;847&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,563&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;T&amp;amp;M&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,697&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,837&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,148&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;108&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;949&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,024&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,916&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,994&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,983&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;229&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,796&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,587&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;br/&gt;&lt;/div&gt; &lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;   &lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Geographical Data &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;  &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Presented below is selected financial information by geogr&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;ap&lt;/div&gt;hic area:&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:57%"/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Long-Lived&#160;Assets*&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Revenue&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; padding-bottom: 0.5pt;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;United States&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;91,917&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;68,185&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;70,911&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;34,277&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;29,131&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Europe&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;31,021&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;31,922&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;29,029&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,230&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,486&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Canada&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8,393&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;6,519&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,574&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Asia&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,345&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,926&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,105&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;15&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Central and South America&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,589&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,271&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,950&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,262&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,657&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,464&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;142,527&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;117,480&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;116,033&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;35,520&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;30,641&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt; &lt;div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-size: 10pt; border: 0px; width: 100%;"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:2%;vertical-align:top;text-align:left;"&gt;*&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; line-height: normal;"&gt;Long-lived assets exclude goodwill assigned to the T&amp;amp;M segment of $4.5&#160;million at both January&#160;31, 2023 and 2022 and $10.1&#160;million and $7.6&#160;million assigned to the PI segment at January&#160;31, 2023 and 2022, respectively.&#160;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="P02_01_2022To01_31_2023"
      decimals="INF"
      unitRef="Unit_Segment">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="text-indent: 4%; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Summarized below are the revenue and segment operating profit (loss) (both in dollars and as a percentage of revenue) for each reporting segment: &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 36%;"/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 2%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;($ in thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Revenue&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Segment&#160;Operating&#160;Profit&lt;br/&gt;(Loss)&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Segment&#160;Operating&#160;Profit&#160;(Loss)&lt;br/&gt;as&#160;a&#160;% of Revenue&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 36%;"/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Product Identification&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;103,089&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;90,915&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;90,268&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7,889&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;10,411&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12,885&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7.7&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11.5&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14.3&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;T&amp;amp;M&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;39,438&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;26,565&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;25,765&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8,989&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,398&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,032&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;22.8&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12.8&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(4.0&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 36%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;142,527&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;117,480&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;116,033&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;16,878&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;13,809&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11,853&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11.8&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11.8&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;10.2&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 36%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Corporate Expenses&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;11,435&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,553&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,420&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 36%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Operating Income&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,443&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,256&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,433&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other Income (Expense), Net&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,033&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,778&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(254&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 36%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Income Before Income Taxes&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,410&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;7,034&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,179&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Income Tax Provision&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;749&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;605&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;895&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 36%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 36%;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Net Income&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,661&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;6,429&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,284&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align: bottom; width: 36%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 2%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt; </us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">103089000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">90915000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">90268000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">7889000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">10411000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">12885000</us-gaap:OperatingIncomeLoss>
    <alot:PercentageOfOperatingProfitToNetSales
      contextRef="PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="3"
      unitRef="Unit_pure">0.077</alot:PercentageOfOperatingProfitToNetSales>
    <alot:PercentageOfOperatingProfitToNetSales
      contextRef="PAsOn01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="3"
      unitRef="Unit_pure">0.115</alot:PercentageOfOperatingProfitToNetSales>
    <alot:PercentageOfOperatingProfitToNetSales
      contextRef="PAsOn01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="3"
      unitRef="Unit_pure">0.143</alot:PercentageOfOperatingProfitToNetSales>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">39438000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">26565000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">25765000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">8989000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">3398000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-1032000</us-gaap:OperatingIncomeLoss>
    <alot:PercentageOfOperatingProfitToNetSales
      contextRef="PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="3"
      unitRef="Unit_pure">0.228</alot:PercentageOfOperatingProfitToNetSales>
    <alot:PercentageOfOperatingProfitToNetSales
      contextRef="PAsOn01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="3"
      unitRef="Unit_pure">0.128</alot:PercentageOfOperatingProfitToNetSales>
    <alot:PercentageOfOperatingProfitToNetSales
      contextRef="PAsOn01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="3"
      unitRef="Unit_pure">-0.04</alot:PercentageOfOperatingProfitToNetSales>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">142527000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">117480000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">116033000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis"
      decimals="-3"
      unitRef="Unit_USD">16878000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis"
      decimals="-3"
      unitRef="Unit_USD">13809000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis"
      decimals="-3"
      unitRef="Unit_USD">11853000</us-gaap:OperatingIncomeLoss>
    <alot:PercentageOfOperatingProfitToNetSales
      contextRef="PAsOn01_31_2023"
      decimals="3"
      unitRef="Unit_pure">0.118</alot:PercentageOfOperatingProfitToNetSales>
    <alot:PercentageOfOperatingProfitToNetSales
      contextRef="PAsOn01_31_2022"
      decimals="3"
      unitRef="Unit_pure">0.118</alot:PercentageOfOperatingProfitToNetSales>
    <alot:PercentageOfOperatingProfitToNetSales
      contextRef="PAsOn01_31_2021"
      decimals="3"
      unitRef="Unit_pure">0.102</alot:PercentageOfOperatingProfitToNetSales>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="P02_01_2022To01_31_2023_CorporateNonSegmentMembersrtConsolidationItemsAxis"
      decimals="-3"
      unitRef="Unit_USD">11435000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="P02_01_2021To01_31_2022_CorporateNonSegmentMembersrtConsolidationItemsAxis"
      decimals="-3"
      unitRef="Unit_USD">9553000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="P02_01_2020To01_31_2021_CorporateNonSegmentMembersrtConsolidationItemsAxis"
      decimals="-3"
      unitRef="Unit_USD">9420000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">5443000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">4256000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">2433000</us-gaap:OperatingIncomeLoss>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">-2033000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">2778000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">-254000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">3410000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">7034000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">2179000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">749000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">605000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">895000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2661000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">6429000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">1284000</us-gaap:NetIncomeLoss>
    <alot:NumberOfCustomersAccountingForCreditRisk
      contextRef="PAsOn01_31_2022"
      decimals="INF"
      unitRef="Unit_Segment">10</alot:NumberOfCustomersAccountingForCreditRisk>
    <alot:NumberOfCustomersAccountingForCreditRisk
      contextRef="PAsOn01_31_2023"
      decimals="INF"
      unitRef="Unit_Segment">10</alot:NumberOfCustomersAccountingForCreditRisk>
    <alot:NumberOfCustomersAccountingForCreditRisk
      contextRef="PAsOn01_31_2021"
      decimals="INF"
      unitRef="Unit_Segment">10</alot:NumberOfCustomersAccountingForCreditRisk>
    <us-gaap:ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Other information by segment is presented below: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:76%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:72%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Assets&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Product Identification&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;69,607&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;51,732&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;T&amp;amp;M&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;60,730&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;50,374&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Corporate*&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8,870&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;12,849&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;139,207&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;114,955&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt; &lt;div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:2%;vertical-align:top;text-align:left;"&gt;*&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-align: left; line-height: normal;"&gt;Corporate assets consist principally of cash, cash equivalents, deferred tax assets and refunds, and certain prepaid corporate assets. &lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:60%"/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Depreciation and&lt;br/&gt; Amortization&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Capital Expenditures&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Product Identification&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,219&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,157&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,835&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;121&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;847&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,563&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;T&amp;amp;M&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,697&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,837&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,148&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;108&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;949&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,024&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,916&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,994&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,983&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;229&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,796&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,587&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock>
    <us-gaap:Assets
      contextRef="PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">69607000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="PAsOn01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">51732000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">60730000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="PAsOn01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">50374000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="PAsOn01_31_2023_CorporateNonSegmentMembersrtConsolidationItemsAxis"
      decimals="-3"
      unitRef="Unit_USD">8870000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="PAsOn01_31_2022_CorporateNonSegmentMembersrtConsolidationItemsAxis"
      decimals="-3"
      unitRef="Unit_USD">12849000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">139207000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">114955000</us-gaap:Assets>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">2219000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1157000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1835000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">121000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">847000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1563000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1697000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">2837000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">4148000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P02_01_2022To01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">108000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P02_01_2021To01_31_2022_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">949000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P02_01_2020To01_31_2021_OperatingSegmentsMembersrtConsolidationItemsAxis_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1024000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">3916000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">3994000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">5983000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">229000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">1796000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">2587000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Presented below is selected financial information by geogr&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;ap&lt;/div&gt;hic area:&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:57%"/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Long-Lived&#160;Assets*&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="10" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Revenue&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; padding-bottom: 0.5pt;;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;January&#160;31,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;United States&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;91,917&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;68,185&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;70,911&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;34,277&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;29,131&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Europe&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;31,021&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;31,922&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;29,029&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,230&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,486&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Canada&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;8,393&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;6,519&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,574&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Asia&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,345&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,926&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;5,105&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;15&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Central and South America&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4,589&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,271&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;3,950&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Other&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,262&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,657&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,464&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Total&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;142,527&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;117,480&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;116,033&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;35,520&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;30,641&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="clear:both;max-height:0pt;;text-indent: 0px;"/&gt; &lt;div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;;text-indent: 0px;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font-size: 10pt; border: 0px; width: 100%;"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:2%;vertical-align:top;text-align:left;"&gt;*&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; line-height: normal;"&gt;Long-lived assets exclude goodwill assigned to the T&amp;amp;M segment of $4.5&#160;million at both January&#160;31, 2023 and 2022 and $10.1&#160;million and $7.6&#160;million assigned to the PI segment at January&#160;31, 2023 and 2022, respectively.&#160;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_USsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">91917000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_USsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">68185000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_USsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">70911000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:NoncurrentAssets
      contextRef="PAsOn01_31_2023_USsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">34277000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="PAsOn01_31_2022_USsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">29131000</us-gaap:NoncurrentAssets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_EuropeMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">31021000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_EuropeMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">31922000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_EuropeMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">29029000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:NoncurrentAssets
      contextRef="PAsOn01_31_2023_EuropeMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">1230000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="PAsOn01_31_2022_EuropeMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">1486000</us-gaap:NoncurrentAssets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_CAsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">8393000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_CAsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">6519000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_CAsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">5574000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:NoncurrentAssets
      contextRef="PAsOn01_31_2023_CAsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">4000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="PAsOn01_31_2022_CAsrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">9000</us-gaap:NoncurrentAssets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_AsiaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">5345000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_AsiaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">5926000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_AsiaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">5105000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:NoncurrentAssets
      contextRef="PAsOn01_31_2023_AsiaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">9000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="PAsOn01_31_2022_AsiaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">15000</us-gaap:NoncurrentAssets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_CentralAndSouthAmericaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">4589000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_CentralAndSouthAmericaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">3271000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_CentralAndSouthAmericaMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">3950000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023_OtherCountriesMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">1262000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022_OtherCountriesMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">1657000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021_OtherCountriesMembersrtStatementGeographicalAxis"
      decimals="-3"
      unitRef="Unit_USD">1464000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">142527000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">117480000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">116033000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:NoncurrentAssets
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">35520000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">30641000</us-gaap:NoncurrentAssets>
    <us-gaap:Goodwill
      contextRef="PAsOn01_31_2023_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-5"
      unitRef="Unit_USD">4500000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="PAsOn01_31_2022_TestAndMeasurementMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-5"
      unitRef="Unit_USD">4500000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="PAsOn01_31_2023_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-5"
      unitRef="Unit_USD">10100000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="PAsOn01_31_2022_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis"
      decimals="-5"
      unitRef="Unit_USD">7600000</us-gaap:Goodwill>
    <us-gaap:CompensationAndEmployeeBenefitPlansTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 19&#x2014;Employee Benefit Plans &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We sponsor a Profit-Sharing Plan (the &#x201c;Plan&#x201d;) which provides retirement benefits to all eligible domestic employees. The Plan allows participants to defer a portion of their cash compensation and contribute such deferral to the Plan through payroll deductions. The Company makes matching contributions up to specified levels. The deferrals are made within the limits prescribed by Section&#160;401(k) of the Internal Revenue Code. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;All contributions are deposited into trust funds. It is our policy to fund any contributions accrued. Our annual contribution amounts are determined by the Board of Directors. Contributions paid or accrued amounted to $0.5&#160;million in fiscal 2023, $0.5&#160;million in fiscal 2022 and $0.4&#160;million in fiscal 2021. &lt;/div&gt; </us-gaap:CompensationAndEmployeeBenefitPlansTextBlock>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="P02_01_2022To01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">500000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="P02_01_2021To01_31_2022"
      decimals="-5"
      unitRef="Unit_USD">500000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="P02_01_2020To01_31_2021"
      decimals="-5"
      unitRef="Unit_USD">400000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:ProductWarrantyDisclosureTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 20&#x2014;Product Warranty Liability &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We offer a manufacturer&#x2019;s warranty for the majority of our hardware products. The specific terms and conditions of warranty vary depending upon the products sold and the country in which we do business. We estimate the warranty costs based on historical claims experience and record a liability in the amount of such estimates at the time product revenue is recognized. We regularly assess the adequacy of our recorded warranty liabilities and adjust the amounts as necessary. Activity in the product warranty liability, which is included in other accrued expenses in the accompanying consolidated balance sheet, is as follows: &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:68%"/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;(&lt;/div&gt;In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance, beginning of the year&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;834&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;730&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;850&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Provision for Warranty Expense&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,077&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,174&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;855&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Cost of Warranty Repairs&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,839&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,070&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(975&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance, end of the year&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,072&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;834&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;730&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman;text-align:center"&gt;&lt;br/&gt;&lt;/div&gt;  &lt;div style="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;During fiscal 2022, we incurred incremental costs because of a product quality issue with one of our vendors. As the result of discussions with the vendor, which was responsible for the product quality issue, we entered into an agreement wh&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;ere&lt;/div&gt;by the vendor paid us $975,000 as partial reimbursement of the costs we incurred in supporting our customers with respect to the product quality issue. For the period ended January&#160;31, 2022, we recorded this payment to offset cost of goods in our PI segment for the product lines effected to partially reverse the accounting impact when the original costs of the quality issues were &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;incurred. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; </us-gaap:ProductWarrantyDisclosureTextBlock>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock contextRef="P02_01_2022To01_31_2023">Activity in the product warranty liability, which is included in other accrued expenses in the accompanying consolidated balance sheet, is as follows: &lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:84%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:68%"/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:6%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;(&lt;/div&gt;In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance, beginning of the year&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;834&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;730&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;850&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Provision for Warranty Expense&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,077&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;2,174&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;855&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Cost of Warranty Repairs&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(1,839&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(2,070&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(975&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Balance, end of the year&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,072&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;834&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;730&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size:1px"&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt; &lt;div style="margin-top: 0px; margin-bottom: 0px; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&#160;&lt;/div&gt; &lt;/td&gt;
&lt;td&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">834000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="PAsOn01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">730000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="PAsOn01_31_2020"
      decimals="-3"
      unitRef="Unit_USD">850000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualWarrantiesIssued
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">2077000</us-gaap:ProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ProductWarrantyAccrualWarrantiesIssued
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">2174000</us-gaap:ProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ProductWarrantyAccrualWarrantiesIssued
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">855000</us-gaap:ProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ProductWarrantyAccrualPayments
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1839000</us-gaap:ProductWarrantyAccrualPayments>
    <us-gaap:ProductWarrantyAccrualPayments
      contextRef="P02_01_2021To01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">2070000</us-gaap:ProductWarrantyAccrualPayments>
    <us-gaap:ProductWarrantyAccrualPayments
      contextRef="P02_01_2020To01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">975000</us-gaap:ProductWarrantyAccrualPayments>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="PAsOn01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">1072000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="PAsOn01_31_2022"
      decimals="-3"
      unitRef="Unit_USD">834000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="PAsOn01_31_2021"
      decimals="-3"
      unitRef="Unit_USD">730000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <alot:Reimbursementreceivedfromvendor
      contextRef="P02_01_2022To01_31_2023"
      decimals="-3"
      unitRef="Unit_USD">975000000</alot:Reimbursementreceivedfromvendor>
    <us-gaap:ConcentrationRiskDisclosureTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"/&gt;&lt;/div&gt;&lt;/div&gt;   &lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;;text-indent: 0px;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Note 21&#x2014;Concentration of Risk &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Credit is generally extended on an uncollateralized basis to almost all customers after review of credit worthiness. Concentration of credit and geographic risk with respect to accounts receivable is limited due to the large number and general dispersion of accounts, which constitute our customer base. We periodically perform &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;on-going&lt;/div&gt; credit evaluations of our customers. We have not historically experienced significant credit losses on collection of our accounts receivable. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;During the years ended January&#160;31, 2023, 2022 and 2021, one vendor accounted for 18.7%, 23.3% and 23.2% of purchases, respectively, and 16.2%, 15.4% and 28.3% of accounts payable, respectively, as of January&#160;31, 2023, 2022 and 2021. &lt;/div&gt; </us-gaap:ConcentrationRiskDisclosureTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P02_01_2022To01_31_2023_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis"
      decimals="3"
      unitRef="Unit_pure">0.187</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P02_01_2021To01_31_2022_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis"
      decimals="3"
      unitRef="Unit_pure">0.233</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P02_01_2020To01_31_2021_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis"
      decimals="3"
      unitRef="Unit_pure">0.232</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P02_01_2022To01_31_2023_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_TradeAccountsPayablesMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="3"
      unitRef="Unit_pure">0.162</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P02_01_2021To01_31_2022_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_TradeAccountsPayablesMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="3"
      unitRef="Unit_pure">0.154</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P02_01_2020To01_31_2021_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_TradeAccountsPayablesMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="3"
      unitRef="Unit_pure">0.283</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="P02_01_2022To01_31_2023"> &lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 22&#x2014;Commitments and Contingencies &lt;/div&gt;&lt;/div&gt; &lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;In order to meet our manufacturing demands and, in some cases, lock in particular pricing structures for specific goods used in manufacturing, we enter into purchase commitments with our suppliers. At January&#160;31, 2023, our purchase commitments totaled $25.8&#160;million, with $22.8&#160;million due within 12 months, some of which are &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-cancelable.&lt;/div&gt; &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;We are also subject to contingencies, including legal proceedings and claims arising in the normal course of business that cover a wide range of matters including, among others, contract and employment claims; workers compensation claims; product liability; warranty and modification; and adjustment or replacement of component parts of units sold. &lt;/div&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Direct costs associated with the estimated resolution of contingencies are accrued at the earliest date at which it is deemed probable that a liability has been incurred and the amount of such liability can be reasonably estimated. While it is impossible to ascertain the ultimate legal and financial liability with respect to contingent liabilities, including lawsuits, we believe that the aggregate amount of such liabilities, if any, in excess of amounts provided or covered by insurance, will not have a material adverse effect on the consolidated financial position or results of operations. It is possible, however, that future results of operations for any particular future period could be materially affected by changes in our assumptions or strategies related to these contingencies or changes out of our control. &lt;/div&gt; </us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:PurchaseObligation
      contextRef="PAsOn01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">25800000</us-gaap:PurchaseObligation>
    <us-gaap:PurchaseObligationDueInNextTwelveMonths
      contextRef="PAsOn01_31_2023"
      decimals="-5"
      unitRef="Unit_USD">22800000</us-gaap:PurchaseObligationDueInNextTwelveMonths>
    <us-gaap:FairValueDisclosuresTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top: 18pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Note 23&#x2014;Fair Value Measurements &lt;/div&gt;&lt;/div&gt;&lt;div style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Assets and Liabilities Not Recorded at Fair Value on the Cons&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;olid&lt;/div&gt;ated Balance Sheet &lt;/div&gt;&lt;/div&gt;&lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Our long-term debt, including the current portion of long-term debt not reflected in the financial statements at fair value, is reflected in the table below: &lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:66%"/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Fair&#160;Value Measurement at&lt;br/&gt; January&#160;31, 2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Level&#160;1&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Level&#160;2&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Level&#160;3&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Total&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Carrying&lt;br/&gt; Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Long-Term Debt and Related Current Maturities&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,310&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,310&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1pt"&gt;
&lt;td style="height:12pt"&gt;&#160;&lt;/td&gt;
&lt;td colspan="16" style="height:12pt"&gt;&#160;&lt;/td&gt;
&lt;td colspan="4" style="height:12pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Fair&#160;Value Measurement at&lt;br/&gt; January&#160;31, 2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Level&#160;1&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Level&#160;2&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Level&#160;3&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Total&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Carrying&lt;br/&gt; Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Long-Term Debt and Related Current Maturities&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,255&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,255&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;div style="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;The fair value of our long-term debt, including the current portion, is estimated by discounting the future cash flows using current interest rates at which similar borrowings with the same maturities would be made to borrowers with similar credit ratings and is classified as Level&#160;3. &lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div style="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman"&gt;Our long-term debt, including the current portion of long-term debt not reflected in the financial statements at fair value, is reflected in the table below: &lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt;width:100%;border:0;margin:0 auto"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:66%"/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:2%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Fair&#160;Value Measurement at&lt;br/&gt; January&#160;31, 2023&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Level&#160;1&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Level&#160;2&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Level&#160;3&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Total&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Carrying&lt;br/&gt; Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Long-Term Debt and Related Current Maturities&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,310&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,310&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;14,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-size:1pt"&gt;
&lt;td style="height:12pt"&gt;&#160;&lt;/td&gt;
&lt;td colspan="16" style="height:12pt"&gt;&#160;&lt;/td&gt;
&lt;td colspan="4" style="height:12pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Fair&#160;Value Measurement at&lt;br/&gt; January&#160;31, 2022&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;(In thousands)&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Level&#160;1&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Level&#160;2&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Level&#160;3&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Total&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Carrying&lt;br/&gt; Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Long-Term Debt and Related Current Maturities&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,255&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,255&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;9,250&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="PAsOn01_31_2023_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis_FairValueInputsLevel3MemberusgaapFairValueByFairValueHierarchyLevelAxis"
      decimals="-3"
      unitRef="Unit_USD">14310000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="PAsOn01_31_2023_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis"
      decimals="-3"
      unitRef="Unit_USD">14310000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="PAsOn01_31_2023_CarryingReportedAmountFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis"
      decimals="-3"
      unitRef="Unit_USD">14250000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="PAsOn01_31_2022_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis_FairValueInputsLevel3MemberusgaapFairValueByFairValueHierarchyLevelAxis"
      decimals="-3"
      unitRef="Unit_USD">9255000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="PAsOn01_31_2022_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis"
      decimals="-3"
      unitRef="Unit_USD">9255000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="PAsOn01_31_2022_CarryingReportedAmountFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis"
      decimals="-3"
      unitRef="Unit_USD">9250000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock contextRef="P02_01_2022To01_31_2023">&lt;div id="tx415415_8" style="margin-top: 6pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-align: center;"&gt;&lt;div style="display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;SCHEDULE II&#x2014;VA&lt;div style="display:inline;"&gt;LUA&lt;/div&gt;TION AND Q&lt;div style="display:inline;"&gt;U&lt;/div&gt;AL&lt;div style="display:inline;"&gt;IFY&lt;/div&gt;ING ACCOUNTS AND RESERVES&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="null;text-indent: 0px;;font-weight:bold;display:inline;"&gt; &lt;/div&gt;&lt;div style="font-size: 12pt; margin-top: 0px; margin-bottom: 0px;;text-indent: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;width:100%;border:0;margin:0 auto;text-indent: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width:63%"/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="vertical-align:bottom;width:5%"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt"&gt;
&lt;td style="border-bottom:1.00pt solid #000000;vertical-align:bottom;white-space:nowrap;text-align:center;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 1pt; font-size: 8pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-align: center; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Description&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Balance&#160;at&lt;br/&gt;Beginning&lt;br/&gt;of Year&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Provision/&lt;br/&gt;(Benefit)&lt;br/&gt;Charged&#160;to&lt;br/&gt;Operations&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Deductions(2)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="border-bottom:1.00pt solid #000000;vertical-align:bottom;text-align:center;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Balance&lt;br/&gt;at End&lt;br/&gt;of&#160;Year&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 63%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Allowance for Doubtful Accounts (1):&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align:top"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; text-indent: -1em; font-size: 8pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 63%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;Year Ended January&#160;31,&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 63%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2023&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;826&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;100&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(195&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;731&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt;background-color:#cceeff"&gt;
&lt;td style="vertical-align: top; width: 63%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2022&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,054&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;50&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;(278&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;826&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt"&gt;
&lt;td style="vertical-align: top; width: 63%;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; text-indent: -1em; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; line-height: normal;"&gt;2021&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;856&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;194&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;4&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; width: 5%;"&gt;&#160;&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;$&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom;text-align:right;"&gt;1,054&lt;/td&gt;
&lt;td style="white-space:nowrap;vertical-align:bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 8pt; margin-top: 0px; margin-bottom: 0px; border-bottom: 1px solid rgb(0, 0, 0); width: 11%;;text-indent: 0px;"&gt;&#160;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%;text-indent: 0px;"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:4%;vertical-align:top;text-align:left;"&gt;(1)&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-align: left; line-height: normal;"&gt;The allowance for doubtful accounts has been netted against accounts receivable in the balance sheets as of the respective balance sheet dates. &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt;border:0;width:100%;text-indent: 0px;"&gt;
&lt;tr style="page-break-inside:avoid"&gt;
&lt;td style="width:4%;vertical-align:top;text-align:left;"&gt;(2)&lt;/td&gt;
&lt;td style="vertical-align:top;text-align:left;"&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-align: left; line-height: normal;"&gt;Uncollectible accounts written off, net of recoveries. &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="PAsOn01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">826000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="P02_01_2022To01_31_2023_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">100000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="P02_01_2022To01_31_2023_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">195000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="PAsOn01_31_2023_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">731000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="PAsOn01_31_2021_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">1054000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="P02_01_2021To01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">50000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="P02_01_2021To01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">278000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="PAsOn01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">826000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="PAsOn01_31_2020_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">856000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="P02_01_2020To01_31_2021_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">194000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="P02_01_2020To01_31_2021_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">-4000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="PAsOn01_31_2021_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">1054000</us-gaap:ValuationAllowancesAndReservesBalance>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc
          xlink:href="#Fact_75771699"
          xlink:label="Fact_75771699"
          xlink:type="locator"/>
        <link:footnote id="FN_259972" xlink:label="FN_259972" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">Beginning in fiscal 2023, changes to Section 174 of the Internal Revenue Code made by the Tax Cuts and Jobs Act of 2017 no longer permit an immediate deduction for research and development expenditures in the tax year that such costs are incurred. These costs are capitalized resulting in an increase in deferred tax assets of $1.2 million.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_75771699"
          xlink:to="FN_259972"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_75771700"
          xlink:label="Fact_75771700"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_75771700"
          xlink:to="FN_259972"
          xlink:type="arc"/>
    </link:footnoteLink>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>117
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( %&"D58'04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    " !1@I%6 !YPV^\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9)1
M2\,P$,>_BN2]O:05E=#E9<,G!<&!XEM(;EM8DX;DI-VWMZU;A^@'\#%W__SN
M=W"-B=)T"5]2%S&1PWPS^#9D:>**'8BB!,CF@%[G<DR$L;GKDM<T/M,>HC9'
MO4>H.+\#CZ2M)@T3L(@+D:G&&FD2:NK2&6_-@H^?J9UAU@"VZ#%0!E$*8&J:
M&$]#V\ 5,,$(D\_?!;0+<:[^B9T[P,[)(;LEU?=]V==S;MQ!P/OST^N\;N%"
M)AT,CK^RDW2*N&*7R6_U>K-]9*KB55WPVT+<;RLNQ8,4]<?D^L/O*NP[ZW;N
M'QM?!%4#O^Y"?0%02P,$%     @ 48*15IE<G",0!@  G"<  !,   !X;"]T
M:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M
M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R
M>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2P]R"BPA+>!3+
MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,!
M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K
MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2
MBW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_KFVB<"HU;3]-K
M=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K>A(5M>5 TR
M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$
MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)I#-ZG7TZSFN4
M?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R.AQG0GS/]O:1
MI24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG LR+7E$8D19_(
M+;KD$3BU20TR$S\(G8:8:E < J0),9:AAOBTQJP1X!-]M[X(R-^-B/>K;YH]
M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M
MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZ<TT#PE"\D^DJ1CVFS(Z=T)LWH
M,QK!1J\;=8=HTCQZ_@7YG#4*')$;'0)G&[-&(81IN_ >KR2.FJW"$2M"/F(9
M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+
MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T
M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+
M.7\N?<^E[[GT/:'2MS<C?6?!TXM;WD9N6\3[KC':US0N*&-7<LW(QU2ODRG8
M.9_ [/UH/I[Q[?K9)(2OFEDM(Q:02X&S022X_(O*\"K$">AD6R4)RU3393>*
M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W<DOJMI2^M28X
M2O2QS'!.'LL,.V<\DAVV=Z =-?OV77;D(Z4P4Y=#N!I"O@-MNIW<.CB>F)&Y
M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_#
M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0
MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR
ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC
MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYN<KGHB=OJ7
M=\%@\OUPR4</Y3OG7_1=0ZY^]MWC^FZ3.TA,G'G%$0%T10(CE1P&%A<RY%#N
MDI &$P'-E,E$\ *"9*8<@)CZ"[WR#+DI%<ZM/CE_12R#ADY>TB42%(JP# 4A
M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF
M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'<YMZN,)%K/]8UA[Y,M\Y<-LZW@->
MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_
M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]!
MU4#E/]O4#6CV#30<D05>,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04
M" !1@I%6.NV($T8'  ![,   &    'AL+W=O<FMS:&5E=',O<VAE970Q+GAM
M;+6;;6_:2!2%_\J(755=*02_$$+:!,DA89=MF[(A;=1=[8?!'L"*[6''8TC^
M_5X;8^-J?,'2D \)!M]C^V%>SK$GUQLN7N(E8Y*\AD$4W[264JX^=#JQNV0A
MC<_YBD7PR9R+D$K8%(M.O!*,>EE1&'0LP^AU0NI'K<%U]MY$#*YY(@,_8A-!
MXB0,J7B[90'?W+3,UNZ-1W^QE.D;G<'UBB[8E,EOJXF K4ZAXODABV*?1T2P
M^4W+,3_<V5=I0;;'=Y]MXKW7)+V4&><OZ<;8NVD9Z1FQ@+DRE:#P9\V&+ A2
M)3B/_W+15G',M'#_]4Y]E%T\7,R,QFS(@V??D\N;5K]%/#:G22 ?^>8/EE_0
M1:KG\B#.?I/-=M]NMT7<))8\S(OA#$(_VOZEKSF(O0*K5U-@Y0763P5FW1'L
MO, ^MJ";%W0S,MM+R3C<44D'UX)OB$CW!K7T108SJX;+]Z/T>Y]* 9_Z4"<'
M0[YF@DS@*R9M\FUZ1][_^MMU1X)R^GG'S55NMRI6C8IID2\\DLN8W$<>\ZH"
M'3BEXKRLW7G=6JCBGS0Z)[9Y1BS#LA4G-,3+G94X)Z956WYWX.A) $<WLG(+
MN1J[H&QG>C9*^1]G%DL!+?U?%>&M0E>MD';_#_&*NNRF!?T[9F+-6H-WOY@]
MXZ.*CDZQ.TUB%7+=@EP74Q_<<3>!84:2I[<54V'#RTVC_4G%!ZUJRD>36(7/
M1<'G KU !^!X&:!10!<J0'C]G :QBNL0+6M*2)-8A5"O(-0[K@5-F/"YEXY0
M!(9*96/"E8HQJ7900NN;0M,D5H%V64"[/ [:R(]=&I ?C HR@C=C%39<JPX6
M6M44EB:Q"JQ^ :O?"%;>T&IQX6JC'RI8:$U36)K$*K"N"EA7Z.7=1]*7;^21
M+?QT,@1J#S14=D9<QX%J_L#7](R,(_=<Q0P5:,I,DUB%F6F4+LTXAMH06IF
M%C8&E_5*/K$WI57#I8SLIV]V>RIF>'%3:+K4JM3VO*V)7NHP$>+G00P;_@_(
MM=N&V;9-)3:TLC$V36I5;%:)S3JFL7WG01))"(/ +V!".90=4'K@2EAH46-8
MFM2JL$IG;Z+VM^B9>5-[9"LNI!\MR%12J1[_#RC^8*JJ(5[5F-HI3+U9NGH3
M]^4YM7$DF=A&_[13TAU&)35<L8Z:5J>O2ZU*K?3Z)F[6<VK/+ C:+Q'?1&3*
M:,PCYI%Q'"=,*+GAFC5=5*O]UZ56Q58& !/W[3FV;!0C0QC[%URH9TY<QW%=
M!A(@X&W%E.2T9@!=:E5R90HP<>O^)*B7C65OX8P'2F2X@//YZY.2DE;SKTNM
M2JFT_R;NV//V-5U"OR1#'JYHI&Y>N$QM%,?K&L,ZA?LW2_MO'N7_IR$%6+=)
M#!_'ZED2UY$B4</2ZOIUJ57O@9:VWSK*]M^'3"S2?O@[*,@EUL8."-:V,;RN
M*39=:E5LI>^W<*/^Y,N $3XGIO5^]AM,DFXB@*.2UX$$P<.0PS0KN?NBQ*;5
M]^M2JV(K?;^%N_4=)W+_ZBYIM&"UT?R T(,SO7/^4O+2:OUUJ55YE=;?.LKZ
MCR.7"W#]-'V0=9;Y?FA\X#0XQ"=(3T/NJ2'BZH]C)4"M*4"76A5@F0*LHU)
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
M;MBSC;;8Q%(<8B,\ %9!8@M<';VP&U]*8+E3P6$B<DU=II,$4*1))A(%_;0
ML*(!)A:1';^P&V#MOFNEON0'H$R31Y1ZQEB:5C[&%)9).F@1-[3F?"^R?5H\
MH"MU1T>R)ML"ZPX 1&HZ^P,*F%FFG'2L(FY6O>0J-Z*L4T*E\TH4#V=+7N;H
MDM_!>DTZ$6S*!1CFV>A*CJHX-\)>%%^I?"#-4OG\ZR^QHOL?<_',,OF,KN^R
M],&Z=(F)*QR1H"_=M")VZ1W4R"MEF47Z]&G%*U4&M1ZH\*"3,72Y T,$,7GF
M$]KWP#0BMIR<=,PC;N;-BI7(N4X>N#.*$9-J4=Q''V!$B6W?=>0C;O(=,ARU
M 7EA&4& :K&1S0)6)+2$+]*!C[C+L-,2X64E6,I% I16D6]4LH"96J[6Z>Z
M12(GI']<_SAK0=U@\!5:$R?_WOT"Y8-Z.W6^@R%QP_ T#!Y>3*S:F=LV 1,<
M!A-\F'B^$1]-LQ@'EKR4='PD;CZ:<?!=V@%F^MB(CP S:6A)^FG'3.IFYA5G
M*ML_VA/O44Y-.@9!7SA@%'N6BIIV$*5NB+XU+%*3B/Y1J=1*-(UH8GGW0SMJ
MTC<6?HZP2(&"+^I74X"1A8OTZ&VEFXLG5>DK(9$"U5S8+UL@H]A2/-..?M1-
MOZ:H>B4&4I-J@1\;FQ\PHS3Q+?BC'?ZH&W\J=<]3J=.'YI791!12):&\6-G&
MT]D?'&41%*X_H*-3GSND4G<MN?@^GD^_7U]=3N>+W]#TS]O9\G^@JQ]:3'Y4
M;Z=.=VRFK[X@;3?-0HK53]!?LTHTEJ'+Y%19!T[J!J=>@JJ2L,LRN1=0(\P
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
M7U?-\@:<._%)W<M)L\6GRG9<BXV!P=T.YD.AF,ZK]OT:K#[J-. 9#L+([@V
M+' F3TBEQW%+;VB<#.ZV,N_U5A2]_JB]P!NDMWUZ[Z9W9@6ZV0C!BMDO]$TD
MA4S*/2$\=%US<D9#:B,"*A)%-J*K&@S;IJ#&Y^ GC(XAU&BWCV;L;E*Y*FV[
MMF\QFRKTZD5$,'Z')I,)^LB3 H1T#8QG$P(>AP;.D.XLZK_MM(UCPIV>8FR:
MV51%G,HUEWJAT95P)253<-.&3U.[DK-@Z%#_'TX'-U8'=WN=<L)[BPH&>@+L
MNA*,AS:G*SJSMR0QF*G%W>#&WN!N?P-/U^TXKC,Y(X<;G@K(E9'0GIEB,-F
MPDBDL3FDV^94,%.VT+/-'NU;\@B; ^(Z$Y]BNR<"JM#SK7DH!E0$A\,6H,;E
MD&Z7TR"8#=4V-8=P((KK3$)J]S5 %'@#&\051<.6Q8 T#H=T.YS/3'5XFRKX
M<#--@L#>T@*J@!)[1PBH,(G:>E;C;4CGJG\ @"9ZU-SP/-?3W9TY)ROG>?+N
M.I'I#*3;90X/9[MSW][H@*K(H8-4.&JA:SP'Z?8<3]/%:;91]J%=Q4>?Q0>I
MG(4:5+7R-5Z$='N1'^6A,--[GZUVVDN&/F_RJ0;5J]0AJT1?-DHJO4G2Z_F3
MS0H=L7CV:1*D(K8JAE38:^NTC4$AW0:E;#2]QT.WBP6;J4-<Q6?WZ/;G)MTF
MF3D&!@E=YQ$X?*X&^\3& Q*1%KC&<I!NR_$?VK2K,[N^PQR<V=20RCF<@E0X
ML/?R_8,C_9R)9?EJ1*(9WQ1J=Q1>WZU?OUR5+QVL^]?X(MZ]1&G2[-[I?$K$
M,BTDRMA"I_3.0UTDL7M-LKM0?%V^.)ARI7A>_ERQ9,Z$$>C_%YRK_85Y0/VR
M:OP/4$L#!!0    ( %&"D59O$F!<V0,  $<-   8    >&PO=V]R:W-H965T
M<R]S:&5E=#4N>&ULK5??<]HX$/Y7-+[.33+3Q#\QD -F$KA><]/>94+:>[BY
M!\5>L*^V1"4!Z7_?E0P.V,+)0UZP)+[]I&]W):U&6RZ^R0Q D:>R8'+L9$JM
MKEQ7)AF45%[R%3#\9\%%215VQ=*5*P$T-49EX0:>%[LES9DS&9FQ.S$9\;4J
M<@9W@LAU65+QXP8*OAT[OK,?N,^7F=(#[F2THDN8@_JRNA/8<VN6-"^!R9PS
M(F Q=J[]JYEO# SB:PY;>= F6LHCY]]TYS8=.YY>$120*$U!\;.!*12%9L)U
M?-^1.O6<VO"PO6?_8,2CF$<J8<J+?_)496-GX) 4%G1=J'N^_0@[03W-E_!"
MFE^RW6$]AR1KJ7BY,\85E#FKOO1IYX@# S\^81#L#(*F073"(-P9A*\UB'8&
MD?%,)<7X8485G8P$WQ*AT<BF&\:9QAKEYTS'?:X$_INCG9I,.9.\R%.J("5S
MA1\,JI*$+\B4EYA*F8[Q!L@M2W@)Y()\F<_(V;MS\H[DC#QD?"TI2^7(5;@:
MS>DFNYEOJIF#$S/[ ?G,F<HD^9VED!X3N"BCUA+LM=P$G8Q_4G9)0O\]";P@
MM"QH^GKSP&(^>[VYWZ$FK",3&K[P!%\=C).Q^/?Z42J!.^<_F_<K]LC.KH^3
M*[FB"8P=))8@-N!,?OW%C[W?;)Y[2[+9&Y$=>36JO1IUL4_^PJ.T<I_-9Y5M
M;&SUB;F9!'&,P=P<^J(-BJ-@> R:M4%^,(AJT-':>_7:>YT9\;?*0-A3X>P3
ME_+\/6%@TD71)Y $]R4>S4E!I<P7>4*K@S;]'T\5L\FO;"[HO67:O"79[(W(
MCEP?UZZ/.],&[QB\01B9KH4 EOP@#X(R650NO7YVJ<VC%7/O(!4N>F&_D506
MD!\%<2.KVJB^[]F3JE\KZW<JFV:4+4&?Y5]IL0:=/3,0^8;J^UAB6Z)N<SM0
M2:949N0#U@KD(Z1+ZQ;JMY;H-:2^B)BU$1=!.+3K'-0Z!YTZS_[ (DB>$[U1
M4-="\+(I1Y+[>K>@7L7WNZL^BFV"!ZW%1LW@MB%QT)#<AOC#T*YX6"L>=D=6
MH-2+.F-OF0+<&(K<HQ@RW](5>0"!)85)8FOF#E^,Y8N(61L1]>RZ?.^Y9O$Z
ME;UX$%JK$:^=5=&P*<B&\L,X:JBRP/K>B0SU#VHQOSMB%D56*7[[GO+[S7O*
M@NIY<:^II(WRAZW4<P\JS!+$TE3JDB1\S515H-6C]6O@VM3 C?$;_4HPE>LS
M3?7$^$S%$G<H*6"!E-YE'YTKJJJ]ZBB^,G7L(U=8%9MFAB\=$!J _R\X5_N.
MGJ!^.TU^ E!+ P04    " !1@I%6SZJ41;('  "L.P  &    'AL+W=O<FMS
M:&5E=',O<VAE970V+GAM;+6;:W/3.!2&_XHF,.PR0X@E^0IM9VAB>]E9E@X%
M]L/.?C"QVGCP)=A."_]^92>-HTO4NAR^M$UZ]![YO$>R_20^N:WJK\V*L19]
M+_*R.9VLVG;]:C9KEBM6),W+:LU*_I^KJBZ2EK^LKV?-NF9)V@\J\AFQ+'=6
M)%DY.3OIW[NHSTZJ39MG);NH4;,IBJ3^<<[RZO9T@B=W;WS(KE=M]\;L[&2=
M7+-+UGY:7]3\U6RODF8%*YNL*E'-KDXG;_"KF/8#^HC/&;MM#OY&W:%\J:JO
MW8NWZ>G$ZF;$<K9L.XF$_[IA<Y;GG1*?Q[>=Z&2?LQMX^/>=>M0?/#^8+TG#
MYE7^3Y:VJ].)/T$INTHV>?NANOV#[0[(Z?265=[T/]'M+M::H.6F::MB-YC/
MH,C*[>_D^ZX0!P,P/3* [ 80:0 A1P;0W0 J#:#ND0'V;H M9_".#'!V QQY
M@'UD@+L;X$H#'.?( &\WP.O-VE:WMV:1M,G925W=HKJ+YFK='[V__6CN2%9V
MK7C9UOR_&1_7GLVKLJGR+$U:EJ++EO_B?=8VJ+I"\U527K,&926Z7"4U6U5Y
MRNKF-Q1^VV3M#S1%GRX7Z/>GS]'3+N;CJMHT29DV)[.63ZR3GRUWDSC?3H(<
MF<3'JDURS;"Y>=B\*@K>S9=MM?R*_GW'BB^L_D\CLS#+O$G3K%L628XNDBR=
M\F.9)^N,3\DD&II%/["6[P.\IF%2EUEYW9BTHGO*P_>89E/_N/](XWN.=+G<
M%)N\]_I]NV(UXB7D.]BJVUIN&'I;+JN"H=__JIKF^9$\,]Y@^RXC^RXC?6+[
M2.)S=IV571G0>9(GY9*AI$5_)N5+1/$+1"QBZ9IFJ^GVFMV6>G/F8>HY)[.;
MPQY1HQSLB3$+38R+J25&A6J4'9# %Z,B-6I*J>U)*6--&+8"NH\2ZDCW=:3C
MZOABNS2;!]73J-V=\UXUZV3)3B>\)1I6W[#)V;,GV+5>ZY;F5LPY.#YL49NZ
M6*KJ C)K""D608K%0&)"6]C[MK"-;='WP/2<GY'3?D7SY9QT.YJN"6S5-Q\'
MTIHRIAM9F<5#,H:0&2-(L1A(3##6V1OK&(T-BW5>_6 ,O5_W%V[A=U8OLX9I
MS[&.LN-@RY:,U<1(R]71K6O)+..DQYJE)I1VD!@HG>" NW? ?9P#=SNOS@E7
MK2&_-9"LT 2YMB^?N8RS&[M[0HI%D&(QD)A@L;>WV#-:_($U;9TMMQ? W076
MF]ND3AOTF;_/TA>H9*W.9$]S@L?2:IJK0=):6GA*&TSEY6:<_EC;-/F4:<=
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
M&QS\_=(8.B@A0?^ZE7\!4$L#!!0    ( %&"D597AJ#@QPD  -0P   8
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
M+G2K:?;)HH*""Q0V^X#_>#H0C&21&K 6MH04C8@2O3JCFP>:PGD*+U%#+0N
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
MD8/CNMG*/%\PC;FOY3K6SUA9;8!VLFNY$Y7]5E'(:,'T=;+@NFL\P1;E40V
MJ5G=-'*H'$=+CZB]0./V]C;[%6Q&$B+63S;G+9=FS]D&:?"*+=6Z<0$,71'J
M$'!-LE^F'Z;9V<7%]_D3YWL:%(QQN7@2;C?0>8*RX]A?#H &4#5D5YE&TU?2
M^PC!K@351_0V/XI?_>IQS.V<"*"PR9!9D)L8[5%>ZX44?GJ,+&1X$&73R?PW
M_*^''_..\*QK(=*_%2UG4>4RTI<FA#&A'B:X.TDA]5>N>NF\8\CKOX#90MJ\
M!4/7<HDLNP-4MI?96\+QWZ6C>==G1$W]#9.!W!#\..Y]E@YE!2EF2XWIY?%X
MN#RO90)X^1_B)L^> Y?=H[V/-U;_LZO[2XQ:%P0L:/>M\BG@)%8/:( PJ*_
MSW=(GP?2-]6ZX\O]]8FP=7]46L]XHLKCA4F\,:;8E8>\C8RQ]-,DW;?Y<\2P
M7-\,3?QAYG86R%!.14M<R)47%9O!J[-.9?X ISJ=JUA,<H8G8M2$(_K!2V%Z
M(5?*]([I$/.+]\*]QN?.A_F')^TH^"(H^+=JL.$NP[QHB,2IC(%6JYRC/8N#
M%04IV] ^Q&6#:\LA<O=[[(.<]M>,)4W;_IKQ)&(2'Z[@JL'30Z2"]$3 'V<W
M"".C]5,-L@L,=^<@@4BX0S$/-T2_B0+9@^R.,C7]#JZ$^*$.BLZF2WM]::I,
M&W&('#+RME73A5L$=[:<']]4"&9N?#D^D @G%.?]@_;[[Y1(TCC6J<+U0&N7
MX1N=; SU";^ESGS*V*6"K-B640^]6MD+Q7XQGCB8#6\5\#B'PW1F:-ODO/LJ
MG;N3H)PCFO%J8674!9*A4R"VD)0_X$[IA4L ?Z2[VJ6]%R>$;:7Z_&0;>(Y$
MZ=L$!F]Z-5_R( L[IK<&)NC]&U@4'JYR)'"PU5N)/;Q8VF(1CB3UA*<)ITM5
M*'8'-M$N+L2<TN-(OXI';^+%<D_8+OF+G?LXG#UY1-J/XQG?L!WBJ7X\8@NN
M+/<KI2F$AGED[FMH@GLF&,]3*L@B1;.?>X9;H@,J\6I-$_[RO!FE-XCE1@<O
MAU(1(S*9"< Q,?;(3A=3'JM$8'(C4,JWV1N-U=@5)$_:IQIOJ(6%R1)^3T \
ME2;K6&X>%G;6BMN%K=]3RQ-6V+@I?3O<X/%C]8H_4]P0S:RT?0L24ATW>*S0
M!U^$^R7_"Y^0L\( 4/2X?]65^EHX0HQ7B?5^0Y]HPR!YH(IX85>U1_-/>)_%
M5#RO'%\(= =:VQ#5P<;*C+:2:OZIG/;O_%P%/4K=A<F,WYGS578SFLV,WF5J
M\$S8[,'$92ASV'PP*)UH; KB8H-2-^D4/,*^,$9+MT:U!Z'B]\Z/#[2)R+^'
M?EAT,OA!V,HV"_G9&V^M0!K];5AZFGY9=Z4_*.M?UY_EH;M;<'Q6VCF6GDY_
M>'JDL[CXH:W7\O.R6=VV]4K^7%H#C^$+^'Y> Z*$#]P@_=[PU?\ 4$L#!!0
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
M^.\Z7;#%NAZ1*DH!NHC>@=WTDWTCDJ(SYC7540P&8H[VRI-,%1=#O*,D=$%
MPP=2[=CGA:7M7C9USZ+M3UKF#CF3[G>,$U86Z!9A'0307'.5\S3KDTN1]6WJ
M2Z.%,>D*V-6/8<>H->.:BP(^;\TE$#K:L!]"I#L<'HH:HL]FI^0MG2DD^V/.
MHA*[:"%IET_ROD8I?#-+=BX4:8!R%-8$D7QF#X=#<!Q<P],06M[?'@8B6+L
MCJK[2N%JA@J5ZB $TQHQW<;DKJ-]\^)DBAP]!G76U7STB::$94)/5'SJ89R-
M">K0%J%^Y4OP.1P#9U'#U1>WFN+(:PDT.#^IC/R/=-1Z'ZH)8RL/0NRB2VW3
M!ZARN;B4=^ W_1L)II,!O9U\<.UWM2<CBV,/(*QEJ&5S<PRDOH0",UW#5TN
M#^';B@M&,G]4L9??6V K)@(@<@V$$_TH@Z$LZH'=;T;#CGX7;J+_>@UXC%XA
M2731,)#PJN74Y/?@OD^FK(]M @W7:7#!+*FSV'SHB&Q-NEM*<DQ5=/S-H_ ^
M^#,55-"Y_PR^P*03$XKXHV'_+-8?.]F)J"X4BB:B0JU,2J!&G3>-8A FI2J<
M!W&NS0&*J*Q]Y]3D,CH%1$VN&B_A:%)<ZO^!.H4\,XX,/*[-#1F679[MP2Z$
MW:'*_(%IH^MMYL.N>B(C,1[2!S"2G?=)OALV[<G6+P^.KTF5P"#L=R<'5P3W
M1^+%Z.#2F]6A7DV4OF-1)[W)B\G!-1IB5+Q0S+1W-IH>W(0BLR=N,LI(Q,F[
MV'&C,1T/AP?7 ="9S'6;VR]]!$YZI^?#@]\#9(MQ[VPR;#FXD6L9ZX(_(8D5
M5[ZZ1_W<"GP\!I%3<7+@/:NIQF_8 D=B=-8;C:?>A#L*?:3<H,32VH(:Y[+,
MUA'R@O=P,H0Q0WG9.:";9_"DJ4"Z.5P7)?K9 !OP<\)Y,Z,1"\L=O!UH\%UY
M]9(2%!Q%M9T7$.H#)6<QV3@2S*=JSA$,,D\K7_JQ?/F/6F\4%;KH5BG[,;75
MI(OQ*HY')V T#Z")(F9>9W#6>;,)40L'09\WX%\D:6A2>4H)BS,X,!/'XQ,/
M968M,[0V-K@UP&+Z<T\<3T[:7;)"Q\%1%5>-SOM#6G5ZLEFT\+,7>,;''D]/
M"/$AB/+M+5?0_(C+$V]TF/QO/P#N)!F?F@A%'(/&,_QY_C3DV,U/T0=U-WSV
M^"I7OAX]6U=M]'RGW':@"[;\5[_B UEB?7 5M?:YT?41(G.(1FYZ\*6QR^!+
M-)83IV-^Q@%W%**8)-U#:IOKUG-=R$QA)7K@$ J,!3-R?-K,/LS56$SPB#3
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
M4(X>0!J%:9JYS(FG89),?.K$+*:1T<4FS"77)$R3CB<+TSCJ>#*7=R1$#^;
M%P:"P4)13_I*96,I#FKIZR:$#0+>673]U/-I= ^LRX_6X+*5(,42';L[I&)^
MA[O\*78Q+78QU7LQ!=&[Y0I90W_YKMY1-YZ3RY"VQ1 .7318=-)S^7U\<@1+
MK6JR]=T]<@VW%5)KV+BA42#J-1>:'FYJ&5;M:=SUD;+5SE)O.FJA2@.=IS\T
M%->O74"&,*^5MN(_;QZ%AOXDQOM_$ ^G]"Y*2?00#MB0/>R<]$$ZC'<4>EIM
M1>%8<5TZRWCQM16:].X'I:(.MT!LB%C(MO2GWE2*IU%2E+XQ&4M3YR(90:P4
M<A]/Q^EB\IQ+76/<.49$:L1K]%\3>3^$2[K$VFO@3SF\T]!0<L"29+[OL(29
MNF'LAHD;,C?D@U> #UQ;H:J@_ RS>+J=^SWS"Y;'\-1+-MK[?E#FK?PGRU#
MVL9V/Y&>VO_CYMWWY8&]^P1><[T2U+<D+DDT&F;C '3WL>HV] +XS\Q"64IS
MOZSH+XK:,=#Y4M%[MMTX!?WO=O8_4$L#!!0    ( %&"D584X7#.[@(  "8&
M   9    >&PO=V]R:W-H965T<R]S:&5E=#$S+GAM;(5576_;-A1]UZ^X4(,B
M 51+HN2OU#:0M.N6 1F"9%L?ACTPTK5%E")5DHJ;?[]+RE$]('5?+-Y+GL-S
M>3^\VFOSQ3:(#KZU4MEUW#C77::IK1ILN9WH#A7M;+5IN2/3[%+;&>1U +4R
M95DV2ULN5+Q9!=^=V:QT[Z10>&? ]FW+S?,U2KU?QWG\XK@7N\9Y1[I9=7R'
M#^C^ZNX,6>G(4HL6E15:@<'M.K[*+Z]+?SX<^%O@WAZMP4?RJ/47;]S4ZSCS
M@E!BY3P#I\\3?D I/1')^'K@C,<K/?!X_<+^*<1.L3QRBQ^T_"QJUZSC10PU
M;GDOW;W>_X:'>*:>K]+2AE_8#V<+%D/56Z?; Y@4M$(-7_[M\ Y'@$7V P [
M %C0/5P45'[DCF]61N_!^-/$YA<AU( F<4+YI#PX0[N"<&YSHYY0.6T$VE7J
MB-"[T^H OA[ [ ?@G,&M5JZQ\(NJL?X_04I*1CGL1<XU.\GX.U<3*/($6,:*
M$WS%&%X1^(J?A/<,'X6MI+:]0?CGZM$Z0_7P[VLA#X3EZX2^1RYMQRM<Q]0$
M%LT3QINW;_)9]OZ$W'*46YYB_UDV3H)?EP9_:(<P??MFP7+V_H@?_FP0*MUV
M6I'+@MZ"&';!;T>4B9ZZU"<C\LGP&6'1^8T"U^C><E7;B^B6.S2"2PMDPT/?
M==)3GT&Q2(K%G!:,)?-L&7VFUGPGU+L[HW>DS4*>Y.6,?LO%,OHDE* *KN%7
MK6L+K$@8RR%?)O-\$<V(8%I"623+?!9]S^?]$"&<YT129' !Y\NDR.9P$9W!
M-$\*5GH=93++CF[8A1O$R")4)?O:2V:3@OI+RC J*)BS8E*.#GJ<&ENM?-F$
M88)?>]'1;'+ '1P]5:C;@/?/E=#8LAV&P2.?)_!:A:1'O=NBV84)92DSO7)#
M&X_><0A>#;W__?@P06^YV0EE0>*6H-ED/HTIEV$J#8;379@$C]K17 G+A@8Y
M&G^ ]K>:BN5@^ O&OX;-?U!+ P04    " !1@I%6W\=^P4,#  !]!P  &0
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
MJBS-#7\L:%"C=@:DGRGZ :N+"[ 9_:-?4$L#!!0    ( %&"D59N/,=C10P
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
M@H^G2H5L4M^0,*YJ)]#&2:X,#=(S<)M61]_=M0N!9/)<>XY',*A*'*QMY0H
M;RP+\V2[^I1!!J,?6?9^[WCT/18A1 @I\$P@V )&.1A+;VQ5U+BM6H,M$MS
MO^I;HA81I[BJ47X7RE-ZSIL>EK^JJ*?:H0<,Z$:Z8A?P@WI?"OXG#FOG2BK>
M?))\P^>2[SM7A0S2)*5["1Y)TB=IJ&_HB8U%#:)"9S')Z@6UQ6-NCQP76[0+
MSRFQ5$,FM*$:*-:L&YV,]"\5U8(<H,0=2WU#LLNC/?'!;$Q,#;!SR.E:S@<R
MA.I&Y9=9W@=VE:N;$@^PAC2:&D,8KC#%3\W*^M/G.J&(+[5D/@NY))-$98KQ
MJ6F@H\0A?+E2FU9]U6SB#8NVLO$9\5XN8KJ:)-8#SC9N,*9;-.4.A4,F7MQ6
M(SA:R:Q, 8JP-76LC#=A=W=C/C@()UJIQC7,F3P4,3K0I-[,RH3KJ3:I.WR)
MB-$973A&^%G-51&;F_NFH^TV-1D@'(21,2AYHG,+BJRV>;O<J(56/*H?H@XZ
M2-;9DF/HL@\-;LC5QL <3JE)RH@,T3IQ!]-C(2)5$JJDF_V)TZEFS(M%1S@]
M*_0458CO'"@;55HH!_=73@-Y"?PKOMIRX9-[TA7HMPRU'$0UQFL9C1\BMM(7
M-BM9D9:";1F(<)M_B7G7:S?5")W?RW06('(F:<IYBA)])S!61_RF[+4FZXF/
MI#[*ZNR!#7<&:97Y<01Q"J$:+K.()9I@C]2B*HT^-<J">'$,9Q66HJMR"EX\
M"(%*<2A1D54ZJ\>> )YUY-"M@J &E")F_.$& ]9=-]R^?C!+*?Z>3W[AG&R6
M[L9WAUN;V795H",3JILY*N.,"E6L8F9%+1^"L"4USGZA*/XB[4HG7[OB=FY2
M)6X<!K8T#@-(AAD&1IA!L57"\E-6XH%VEY4VKYE[XBZ\<Z)O/K8F#[[%OJTQ
M*+KN;87JUZ6EY3C6\KC:OC.27&#H!FTPZKVHKX6B/7:-#J&DUS/KUGN\G6,'
M>*N-AGW%+YY(G*9QX".GO;-!Z#E.>@-T871S0\3OT?3S;(XSO\JB)+O4XSAM
MWU@<=JL,U$N51?^L2 S&W%3LGXV&-*B'*[(3_C@UK<&"01H%HTD<8!Z;]G\@
M3X\N<5L=G'NDA5OWRV81)T\>]QM-1N$SW\[5RK:L*+:(+;;*+>)MS:;D5R;6
M_]I4L;6-0^.Z7C+(086*K]\?'*IN79,D7&NSDNWF$J>I3/&;@4"7< X9%0N4
MB 6">H>QWZ)65^R+%[U!'>OA.L:U+FN)8GT_$4/Z\738>*G$C]SD<"^W0Z>4
M%$[7M:MRBM^&/@N:$9.MN7FO%6A[!S?$&.T#/.$.@_;DP[W?[JX%2_N.BN8!
MLNS\Q^J=S4;T'EZ@*?.(= 17=8F^?B$"<PY.NL-1'Q_BB[=-!D,>&+8R&&YC
M< >H#J]DXF7:J*),OB->>Y%E>&"CW\1V&KG$MSP1V&#U,B_#_;$DP-=_AO0]
M& SZXE <O#@5AWMON/7RXE.3:&WYNX,^[QUP-AWN;?@;%@!ZG) %SKN#T<G>
M]?.@(:84)4IX=;4BW$P,ZO^?!$J809L7+7@Z;MYQ%/QU\PH! C_(I8CBV5HT
M;B)A: 7#6YN8ES2;_*5Y2=6CNID.%R9QHFTN1*L1KW5;NE6=M>JS/80W4V0]
M+?;>UJ7Q!/YC5[?61E@Y6ULY?;!R]F#E',G11V!6J;'M)?I1ZQ</N;(S_ET'
M.GWJD<./'^K5^J<CX_"+B69[^-W)>[[0H->\4QSM]\Y&'6'#;SG"@S<+_OW$
MQ'B,$?QQKB2PA3;@^ZDQOGH@!O4/:B[_ U!+ P04    " !1@I%6*M"[AMP#
M  !/"   &0   'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6R=5MMNXS80_96!
MMEUL <.R92=-$]N DVPOBZ8UDEX>BC[0$FT1H4@M2<5QO[YG*%GQ HD+%'!L
M49PY<^8,.9/9SKI'7TH9Z+G2QL^3,H3Z,DU]7LI*^*&MI<'.QKI*!"S=-O6U
MDZ*(3I5.L]'H/*V$,LEB%M^MW&)FFZ"5D2M'OJDJX?;74MO=/!DGAQ?W:EL&
M?I$N9K78R@<9?J]7#JNT1RE4)8U7UI"3FWFR'%]>3]D^&ORAY,X?/1-GLK;V
MD1<_%?-DQ(2DEGE@!(&?)WDCM68@T/C<829]2'8\?CZ@?Q]S1RYKX>6-U7^J
M(I3SY"*A0FY$H\.]W?THNWS.&"^WVL=OVK6VDTE">>.#K3IG,*B4:7_%<Z?#
MD</%Z V'K'/((N\V4&1Y*X)8S)S=D6-KH/%#3#5Z@YPR7)2'X+"KX!<6*[%'
MG?-'6CD;.J7PN'6BHI^M,+,T( K;IGF'>-TB9F\@CC.ZLR:4GCZ:0A9? J2@
MUW/,#AROLY.(GX09TF0\H&R434[@3?J<)Q%O\@;>K5P'NE4^U]8W3M)?R[4/
M#N?C[]>R;;&FKV/QG;GTM<CE/,&E\-(]R63Q_MWX?'1U@NFT9SH]A?Z_JG,2
M\76^OP"<OGO_[B(;9U?_%9-^-70G]G0>ZS$:T$Z2-$$Z69 RP9(@S69BZZ3$
M]0TXT:$<D# %R6>9-P&&@FIG*^6]=7LR'%X9VH@GZ\ANZ =XFIVU!=6-\XT
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
M<D6%;B//09P+0A?,,;F[NU-_]EQC'[Q%=S:N^K]RXGD>&.B;;02W&"$2R?E
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
MR'UK\PHBP4Y!O\H<ZF5:;2PSA.PQV[ZBCT;S?@<= @@8.L83JL<-:/E3*VW
M('[.5>N@VQ$U;!OV;3"$T%5Q :$PJ3X&W&JAVQ)=#"T=8L0$W]TZTL*B^!?=
M-4:E"FJ%?/-':JP,/!SAC/P.\:7-K2AA)6JI)#L2RNA-QSYGZW'7(>\M,C)V
M3ZV+92!?\1$'"0=3QLV>8S%$&M/OV&X.M<)VSD! JI /"=JTP@I88@')R[JM
MR?8=:L0^5A+0KZ=7XPD,E$+]1J$":V )&<D\ 0*AU!X+YX52P<N1V;)% ,_Z
M8L_"1AXOB?9M+G;"X3+.C8U4?4PPSA7,MD*U?,CZ@"6T1M/^"XD:K%PPA=01
M?S^H'=UEJD3198(1$!N,#X)'X-??S66P/C^7Y$ 5H_A_32>2+UN+]"P58-&Z
MOO=13MF83FD^/;J=:[:;^ 8YRDVK?7=1#[O#,[?J;O=OYMT;^5G8#?I)BDNX
M3L;OKA*RW;O3+;QIXEV_-AXO1_RL\%2S#08X+PV(]HL08'C\E_\"4$L#!!0
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
MX"(=>*":EMY,C-RX-KJ4AIJR&Q9T"T)E!>C[2E(9;2?60'>OFGX'4$L#!!0
M   ( %&"D58%)%K/RP(   X&   9    >&PO=V]R:W-H965T<R]S:&5E=#(S
M+GAM;(U5RV[;,!#\E852I!?#DF@G#A+;0)P'TJ(I@J2/0]$#+:TMPA2ID)0?
M?]\E):LND!B]2.1R9[A#:E;CC38K6R ZV)92V4E4.%==QK'-"BRY[>L*%:TL
MM"FYHZE9QK8RR/, *F7,DN0\+KE0T70<8D]F.M:UDT+ADP%;ER4WNQE*O9E$
M:;0//(MEX7P@GHXKOL07=-^K)T.SN&/)18G*"JW X&(27:>7LZ'/#PD_!&[L
MP1B\DKG6*S_YE$^BQ!>$$C/G&3B]UGB#4GHB*N.UY8RZ+3WP<+QGOP_:2<N<
M6[S1\J?(73&)+B+(<<%KZ9[UY@%;/6>>+]/2AB=LFMS!6019;9TN6S!54 K5
MO/FV/8<#P$7R#H"U !;J;C8*5=YRQZ=CHS=@?#:Q^4&0&M!4G%#^4EZ<H55!
M.#=]*;C!0LL<C?T(=Z^U<+MQ[(C9K\=9RS)K6-@[+"F#1ZU<8>%.Y9C_2Q!3
M25U=;%_7C!UE_,Q5'P9I#UC"!D?X!IW.0> ;O,-WCZ202WC0)<(7S17,N%I9
M^'4]M\[0M_'[+=4-Y_!M3N^72UOQ#"<1&<*B66,T/3U)SY.K(Q4/NXJ'Q]C_
M^V:.LWS5#B$].SVY8"F[.N0,H=%5RPRWM1%J"0MA,SJF'7)CP]D#5[D?L!YD
M:!S9'/0"=&T RTKJ':(E%TBREL$<.#CM"$\IZ:@W.F,-?-1CC('UN]L>>=E6
M&-PH=[T]6Z;+DEQ*'WRV(A*PW F[V($K$'"+)A,6H3(BPT!I4')'&SJ^I0*H
M.;5(77FSVPZ2M]ETR2+S@"9M30&2VX=O1-_4=:!B0T]8<UE[N#L4]2'I#\B&
M4H:.0LP4&+8!4(TTX&_=?GS@T1+-,G0B2[)KY1J[=M&NV5TW'O^;WG3*1VZ6
M@C1*7! TZ8^HMYBF^S03IZO@^+EVU#_"L*"&C<8GT/I"TU?13OP&W2]@^@=0
M2P,$%     @ 48*15LJ W';C"   L!<  !D   !X;"]W;W)K<VAE971S+W-H
M965T,C0N>&ULG5AK;]LX%OWN7T%XLH,$4!2]9:5)@/2QNUU@VB"93K%8[ ?:
MHFVALNB24MSLK]]S24F6$]O-#)#(>O"^[SWWDE<;J;[II1 U^[$J*WT]7M;U
M^O+B0L^68L6U*]>BPI>Y5"M>XU$M+O1:"9X;HE5Y$7A><K'B136^N3+O[M3-
ME6SJLJC$G6*Z6:VX>GHK2KFY'OOC[L5]L5C6].+BYFK-%^)!U%_6=PI/%SV7
MO%B)2A>R8DK,K\>W_N7;B-:;!7\48J,']XPLF4KYC1X^YM=CCQ02I9C5Q('C
MYU&\$V5)C*#&]Y;GN!=)A,/[COO?C>VP9<JU>"?+KT5>+Z_'DS'+Q9PW97TO
M-_\4K3TQ\9O)4ILKV]BU:31FLT;7<M420X-54=E?_J/UPX!@XAT@"%J"P.AM
M!1DMW_.:WUPIN6&*5H,;W1A3#364*RH*RD.M\+4 77WSL.1*G+^%73E[)U>(
MM>;DKJN+&MQIS<6LY?36<@H.</(#]INLZJ5F'ZI<Y+L,+J!6KUO0Z?8V.,KQ
M7[QR6>@[+/""\ B_L+<U-/S" _S>%WI62MTHP>1\QUIV+TI>&Q?H6CO,>F5J
MO'+'GY"$M6;_N9WJ6B&-_KO/.59TM%\TE=:E7O.9N!ZC=K10CV)\\^LO?N*]
M.6)8U!L6'>/^IX)XE--^/=DG60OF)[_^,@G\X,TA:>SWI3 O>/7$" ]J_&M6
MX^U<EJC^HEHP/?#L;$B\+GFE+]E#+6??V)U]^"K8DC\B6I5@XGM3U$^LJ&8(
M!@K9$+"YDBNV61:S)=L(!M:,-_52JN)_X%]+ME"\JCM:ON$J1W1)HUN$4GZ2
MC]QA'ZN9BQ3S)^R#7?>QET%ZL%-:3[8'WANSC-Z:9__-F6NL[E^SM9*/12XT
M3%8.XRL)FR48*$B%_:WT0NN&0PKE8:<5+"N;G'RTM5$;;\@U>0A+*EF=?V]X
M6<P+F/<1F);GA?$>3*V'>CCD#D3PL9"-+I^L'T"SXPG6H% 5DXTBPOAUYL<[
MYC->Y2T#+WT5 RS;]=\GR2J =ZO2BC^QJ740U+4*BJ)UH+!B9*NOR1*'39L:
M*M2ZAB[DOI;3IBA+I!@4J1I!#@+;A7P4J@+CZ1/826VS2+M(!PH% *=!9^HQ
MQ^E<3^3K1LV6R%N8S/ABH<0"B$%409HX<1K9U(9<0?@RT,<:T6MO?&+<]@K>
M?A@[?A"_BG?K$9?*AI=:VMKA<'!U_F&U+N63$":%1/> 2NS;(]78H<J^W '$
MG;(5/^B>ZE3#P8(:]4PN*E-_7+>%KR]'_Q9<M9UAX.81>9E<'=#%'YTBIQ&7
M1L,\?3:R8/"Y]=,)2_$?^!ZNL9^.[@5JN)A16MN%MS;PY-L7W[Y4!2#<=X+4
MIVN2T'42CWK'M,#3!<)$"2W-3_$W^EW6O(18T&2>^8VRT/Q._&Q7S4MVVP4P
M1R7;L<E., NH9S!P6-5]:6Y#:7(2)=!.2L:74QJ?+D>?FM44J[Z:84/DYZ/.
M.9^W2>$\SV./)6GF>%%$&D=NE/14_VAEM\C>_?;?/_P0:E90T$]ANN>Q,Y:Z
MB==_QV T1W72]SARPL3' C]P)UF_XAW!7%E:#E'+(4Q>I;?/DB!PO$EH]4["
MOZ)WXD2HGS.6N6&T3V\_=1*?%OBQZ^W3^Y",8YH'+,XF\'BG>?I7-(\")T/,
MSMC$3?>J'CNQ<2@TCX)]'@]:CT^&EAW3.V1QE#I^EI'>L>LG(TSEU,KJI<U
MRDK>3? $4%T6[P!P_8+OY6@@MC.23TLQNN?5PD!=9SG:5C$#UK6ICB]]M@_N
MCGT=G2"4WKGOX=H[^N2YRP]_&9T0J7].&>&Q, R<290!BMUDP@(W>_D&!#$1
M!$9BX*,48@^XX48QB]S)RS>C9VYFH9L^=SV]&Z$Y=AXVV-^!1=XH<N0<$RV
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
M1,,D. G7$8,A'&7IPSH-1_H$<X^Z0U N(.ZT^AN+0-/BKJN%K?<@G"/N$;O
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
M>@,^KPTWAV'A'8S_$>;? %!+ P04    " !1@I%6S!U_UR8#  #L!@  &0
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
MRJ0;_X[B2>$D&;H&4H.J]&T Q[!KQU;GXW.K#ZXRY#G4-3?=LIWZ%05 <70
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
MX?483QS5O.J:#R,K]Y):2X,!NV&!#V&JK &NYU*:]L,ZZ)[6LW\!4$L#!!0
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
MZ6LW5\::-DAZP@F+JE[FI?#59;G2EO_'_ -X%<<17,/5NP%<M^:EUJZ:"V=
MF^38Y-^.(V\;MR,W:!V]"%2!I!WU7 5&[;C?NR#O?BWO_D_+^Q&_EIS.'1::
MRY073,""/;O3-[3G6HU3%+$^N@=_EM98.GO:/:7LBP3.*/N)I&@:U/2!6E%3
M*P[4=).:*C6(U]="O= [([YC<;\6=.L#O5,4D"Q[5'E_2(VU/JT,7ZT,?E@9
M_K R(EE')*F#J$\=9=CH+SGJC>^BABYR*6W5:NK5NE'/JO[T8EYU^4],;[@T
M('!-KE%G2(>BJ\Y93:PJ?+=:*4N]SP^W]+&!VAG0_EHI>YBX /7GR_1_4$L#
M!!0    ( %&"D59*T&.\\P(  ,,&   9    >&PO=V]R:W-H965T<R]S:&5E
M=#0Q+GAM;(U5;6_:,!#^SJ\XI=-$I:F!0%]&(1+0=65JM:ITFZ9I'TQR$*N.
MS6RGM/]^9R>D,%'6+_'Y?/?<<^?SI;]2^L%DB!:><B'-(,BL7?;"T"09YLP<
MJ25*.IDKG3-+6[T(S5(C2[U3+L*HU3H)<\9E$/>][E;'?558P27>:C!%GC/]
M/$*A5H.@':P5=WR16:<(X_Z2+7"*]MOR5M,NK%%2GJ,T7$G0.!\$PW9OU'7V
MWN [QY79D,%E,E/JP6TFZ2!H.4(H,+$.@='RB&,4P@$1C3\59E"'=(Z;\AK]
MTN=.N<R8P;$2/WAJLT%P%D"*<U8(>Z=65UCE<^SP$B6,_\*JLFT%D!3&JKQR
M)@8YE^7*GJHZO,4AJAPBS[L,Y%E>,,OBOE8KT,Z:T)S@4_7>1(Y+=RE3J^F4
MDY^-+U#S1^8J Y=<,IEP)F BC=4%E=X:8#*%.VX>X(9)NB6GA.8]FPDTA_W0
M$@4'%"95N%$9+GHE7#N"&R5M9N"33#'=!@B)>YU M$Y@%.U%_,+D$73:'R!J
M19T]>)VZ(!V/U_E_0?XMPQ6F"RX7,'2=Q"U' Q?<)$*90B/\&L[(G+KL]ZZR
ME$&[NX.ZE]<S2Y;@(*"G95 _8A"_/VB?M,[WI-2M4^KN0X^G])+30B"H.4QR
M"F.=9#.$5Y+ETI^.%=V1-)@ZR2C!4V9I\](G4TL*[[(KY;VD=J<,]Q1VK@2-
M"E=HZ]L,_#FUG>/$M_BG+_SY-G]5:$@V6<]KUJ9F3:&TQWE&I@V@:TF@ABIH
M/-4]Y:^>A*C7^.G-?.<VQLQD<$E$?5L@-">N:*HP9&X.89BK0GJ>GVDR-J^5
M(>6U2IB?194:*OVV<:5M;!)Y@]R8KMC2Y>R;T, [>']P%K6C\PWI*R6KZ:H3
ME2.IF\<?X="MI[3N:K1P8[#DJ!=^?!H*0G3+&5-KZPD]+ ?3BWDYWF^8IL=C
M0."<7%M'I\<!Z')DEANKEGY,S92EH>?%C/XRJ)T!G<^5LNN-"U#_M^*_4$L#
M!!0    ( %&"D5:FU*=\Y0,  &$*   9    >&PO=V]R:W-H965T<R]S:&5E
M=#0R+GAM;(U6VV[;.!!]]U<,U*)(@""Z^)[:!AQON^M%@@1)NONPV =:&ME$
M*5(EJ3K]^QU2CF*GMK8O,D5QSIR9.3/F9*OT5[-!M/!<"&FFP<;:\BH,3;K!
M@IE+5:*D+[G2!;/TJM>A*36RS!L5(DRB:! 6C,M@-O%[]WHV49457.*]!E,5
M!=,_KE&H[32(@Y>-![[>6+<1SB8E6^,CVB_EO::WL$')>('2<"5!8SX-YO'5
M]="=]P?^XK@U>VMPD:R4^NI>EMDTB!PA%)A:A\#HYSLN4 @'1#2^[3"#QJ4S
MW%^_H'_VL5,L*V9PH<3?/+.;:3 *(,.<5<(^J.T?N(NG[_!2)8Q_PK8^.QP$
MD%;&JF)G3 P*+NM?]KS+PY[!*#IAD.P,$L^[=N19_L8LFTVTVH)VIPG-+7RH
MWIK(<>F*\F@U?>5D9V<W2"$9.'MB*X'F?!): G6?PG0'<%T#)"< X@1NE;0;
M Y]DAMDA0$AL&DK)"Z7KI!7Q3R8OH1M?0!(EW1:\;A-BU^-UVT/\9[XR5I,*
M_CT69 W1.P[A.N/*E"S%:4#2-ZB_8S#[\"X>1!];"/8:@KTV]-DC=5I6"82[
M'*Z98#)%>/0=.9<9W-D-:EC*N@&=DA]0,(L9/"FX*U'3IEQ#'>6QT%J='P^M
MH5$/!D8TE*?!]VCH'0VK0%4:1)UF;H 9R)6@=C=7G;<$X6PIP6Y490C4G+^)
M=R&8,3SG:>V!E%#1I/!BV%MW/!3,C4%KP,\14#E\>=U[#\-QCY[Q133N[8[?
M<+;B@EN.YL.[41(G'Q>5UBCM+L/S--45A?/IF0:>8_H>DF&?GMUD>!+B1E%D
M3Z@+^.D$6?;[SGX4C:!%)?U&)?U?4TGM::&,W5?%L<JW IZH?(V>.O3]8O]?
M61\M::%PV:1*+&6J"GQ;3=?.[I&\M?:Q&/@=)6T+K[9Y1K..NWYU0_NE)I3,
MWB!RB8VCMI0.FI0.?BVEQ/F6V4K7A:,V_*F:Q]+;"GXBO7-[H&J7DPN:YXUO
M8J*:[/B6 K&G*::Q<]A!'8)P4N]&B5OV(1Z/W6( <;_G%D.(>WYG!..D\T12
M1Y9;$OQ.PITG92GK=<3W[(<KHH'1>$"B-^8*ED59N39?2C)"DL798 #G!U:'
MJA]UHY;:#)O:#-MK4Y6E\(HB-PMF-O"9I'=J#IZ>?JU>3A3IP'?J?.?.]XGA
M=WSPO9ESK^+WL92,9W16MQ:;BAK[T@Z3HVH/]_[V"]1K?[DQU+N5M/4-H-EM
M[D_S^MKP>KR^?-TRO>;2$(F<3*/+(8T.75]HZA>K2G^)6"E+5Q*_W- =$+4[
M0-]SI>S+BW/0W"IG_P%02P,$%     @ 48*15B9SS[9P P  L@@  !D   !X
M;"]W;W)K<VAE971S+W-H965T-#,N>&ULI59MC^(V$/[.KQCEJA-(V\TK!/8
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
MX [C/M=P:13*"L#\4DJS_V$!NFOHY%]02P,$%     @ 48*15DRTBSQ4"
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
MX0U(,AYAJO(.M:LAH,D:^L1<FX#I;,X/53?H:&0;D9U\0S_ROD?J'O*JLLB
MVRL<3"QR4!PCDKJ6IAV!]++1UN.U;3T5A'=Y6\A,X&"(?\NMDW#9K]LR_44N
M-9#I*)?YX,A*DD)"OR* 9@F$@&/SL@18+*APA*N;+>V(:@\)7*5KIRG#?H7<
MN,C:F:("O'"2TM9^TW+/%N(-O^@:RU*I3<,.&%7LS)J=VN%(B]Z;= <R!*P9
M1]J86+NJ5+G<X><A'H)/K^@IP_&X*&#SZ3[T^ZD:9_VBF7]:.S$::EGDF<,@
MVJ_+9/,=Y$L<=I2TD-FI'R.OT91^$?FVW<9-N\4$[#7SV[\$RY'^E73]*SE^
MTFDAA1#,6X\1NV>DTJ>3D:W#HG;#B\,;CF\. S<"R/M2>SINPO&)LK5JA-/F
MKBQ:O#M(X0SHVV-CD-CS7X#1Z;J%AO-IHW+I\)S+=LR5.F^Z& O)) "K/U^0
M-@>HPTLH#BE(5H0AIRT&#11U,V7!-]J%3[N143@8%CE*B3>R0XP?R+0]Y> 2
MV@&H<P]5\\*QD(9]]PXE>]S[RE,*]>"^96D &4>5YH-/][3[7#9KOA+MQ9MO
M;>\YIBG86(@5EOJG,<ZQJOE^U?PP<N.^&2VE,;)TMVL!<E%6 .]74IK=#[M!
M]Q'Q\F]02P,$%     @ 48*15I49>L,W!@  ;@X  !D   !X;"]W;W)K<VAE
M971S+W-H965T-#8N>&ULC5?;<MLV$'WG5^RH;D;.H!()\)K8GK&=M'4G:3QQ
MVCYT^@"3D(0I1; $9#O]^NZ"%&4[EJ8OQ(78Q5[.60 G]Z;[VZZ4<O"PKAM[
M.EDYU[Z9SVVY4FMI9Z95#?Y9F&XM'0Z[Y=RVG9*5%UK7<QZ&Z7PM=3,Y._%S
MU]W9B=FX6C?JN@.[6:]E]_5"U>;^=!)-MA.?]7+E:&)^=M+*I;I1[K?VNL/1
M?-12Z;5JK#8-=&IQ.CF/WERDM-XO^%VK>_NH#^3)K3%_T^"J.IV$9)"J5>E(
M@\3F3EVJNB9%:,8_@\[)N"4)/NYOM?_H?4=?;J55EZ;^0U=N=3K))U"IA=S4
M[K.Y_UD-_B2DKS2U]5^X[]=FN+C<6&?6@S!:L-9-W\J'(0Z/!/)PCP ?!+BW
MN]_(6_E..GEVTIE[Z&@U:J..=]5+HW&ZH:3<N [_:I1S9[]*M^D4F 5\:E4G
M*5*6P8U:8N =?%:MZ9QNEB";"GY29MG)=J5+6<-5TR."0CO](F]K98]/Y@Y-
M(L7S<MC^HM^>[]D^XO#1-&YEX7U3J>JI@CGZ,CK$MPY=\(,:?Y'-#$3$@(=<
M'- GQ@ )KT_LT?=M*/X\O[6N0SC]]9*_O;;X96U$L3>VE:4ZG2"'K.KNU.3L
MU7=1&KX]8&L\VAH?TG[V*Y+X1F(F?+JVE@^)1<NO.[/0#J:UL?88,'_P7I:K
M1ZX-(B_Y=7#GE_V"&\]T_:^JX);H#Q*AYE8*V7RGFHWR9MK!3#.:V3XQ<WIK
MW IT Y6I:]GUODEL  5*E,3:0?@==/9^*?*K&_T:]G@33(](DUN9C44UJ/WS
M8,G>8.V/X@<R+R"8$=8X?2(X. Q0M-J4#JXJ5*D72"3/GR.(0L'"O,!>$;(B
M2OH.3W/L9"SW?Z*0Q5%$'8XS"62S#+Z'*)HEU,0S =\'7U[)=?OV(XB"Q2('
MGK(D38 G+,,F9P4J$DP4.4PC%@H.Q\#Y+"?YOIG&LQ".48]QR''<*N8LX1GU
MHHS%>>A[*<H*P";/<H@$R\,"9UF>"#(G[ZWR33CC:-6EZ3 3TBEX_X"GB46
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
M^@ ^GQI#RX5/T'[-AK\!4$L#!!0    ( %&"D5;R.FU5E H  (YJ   9
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
MG,L^&I#5[5%-M,C+CKT0&OM_.4SPQ@5I-N#WI1#Z;6(N@?H.#_X"4$L#!!0
M   ( %&"D58&8D[5V0(  'L)   9    >&PO=V]R:W-H965T<R]S:&5E=#4Q
M+GAM;+U6;4_;,!#^*Z<,32 -DJ9M*"R-Q,O0*L&$*#!-TSZXR:6Q<.)@.RW\
M^]E.")W69A(,OB2^Q,]SS[TXEW#)Q9W,$!4\Y*R08R=3JCQT71EGF!.YQTLL
M])N4BYPH;8JY*TN!)+&@G+F^YP5N3FCA1*%]=BFBD%>*T0(O!<@JSXEX/$;&
MEV.GYSP]N*+S3)D';A269(Y35#?EI="6V[(D-,="4EZ P'3L'/4.CWL68'?<
M4ES*E3684&:<WQECDHP=SRA"AK$R%$3?%GB"C!DFK>.^(75:GP:XNGYB/[/!
MZV!F1.()9]]IHK*Q,W(@P9143%WQY5=L AH:OI@S::^P;/9Z#L255#QOP%I!
M3HOZ3AZ:1*P ?'\#P&\ OM5=.[(J3XDB42CX$H39K=G,PH9JT5H<+4Q5IDKH
MMU3C5'04WU=44I,A";LPK8L#/(4S0@7<$E:AL52&8/<*3&"28*%H2LF,(4P*
M18HY-<LC*5%)($4"5\B(TEN_2$5SN[J1F%8,SG41)&R?HB*4[< 6T *N,UY)
MC9*AJW1,1ID;-_J/:_W^)OW5? ^\P2?P/=^'F^DI;&_M_$GCZI2T>?';O/B6
MM]^5%Q/K&2VHPETC.UD3Z\]S#82)PES^6J>^]C)8[\4<N4-9DAC'CCY3$L4"
MG>CCAU[@?>Z(H=_&T.]BCYXKN$Y9C0TLUIS=1=0?C+S07:SQ.&@]#CH]GMB&
M15&7W_141DN=I O,9RC6)JB3\(4)&K9RA^]2Y.$;Q!"T,02O*'+P=Y&]8$.1
M]UN/^YT>VX.<(FS_0"+DSCK7W21#>#3(C@2,6CFC3J9K01(]J?04LQ\>:\(W
MDF-WWW62OK!F!ZWD@W?INX,WB*'G/4\.[Q6=UX!76V_@;^B\WLJTZOV/WOL'
M2T?SN2NCU/R67! QIWHT,DPUE;>WK\^ZJ"=];2A>VNDZXTI_^NPRTW]'*,P&
M_3[E7#T99F"W_UO1;U!+ P04    " !1@I%6658EVH0"  "7!0  &0   'AL
M+W=O<FMS:&5E=',O<VAE970U,BYX;6Q]5&U/VT ,_BM6AB:0-O)24B:61FJ!
M:4RK5%$8'Q ?KHF;G$CNRMVE9?]^ODN:E:WT2W+V^?%C^VPG&ZF>=8EHX+6N
MA!YYI3&K"]_768DUTZ=RA8)NEE+5S)"H"E^O%++<@>K*CX)@Z->,"R]-G&ZF
MTD0VIN("9PIT4]=,_9Y@)3<C+_2VBEM>E,8J_#19L0+G:.Y7,T62WWO)>8U"
M<RE X7+DC<.+26SMG<$OCAN]<P:;R4+*9RO<Y",OL %AA9FQ'AC]UGB)564=
M41@OG4^OI[3 W?/6^S>7.^6R8!HO9?7 <U..O"\>Y+AD365NY>8[=OFX #-9
M:?>%36<;>) UVLBZ U,$-1?MG[UV==@!1-$[@*@#1"[NELA%><4,2Q,E-Z"L
M-7FS!Y>J0U-P7-A'F1M%MYQP)AUG+PW7W%9(PV>8MV\#<@FWN$;1(#"1PS53
M@HM"PP2I#Q#NV"MJ.+Y"PWAU0KAQH1#IK0P\<%/"6!LE8<JRDNB RD<:31WV
MANUQBO4"U1,< 1=P5\I&$Y=.?$-YV>C\K,MATN80O9/#$*92F%+#M<@Q?XOW
MJ1Y]4:)M42;108<_F#B%0?@)HB :P/W\"HZ/3@[X'?3%'CB_@W?\3AI-&JUW
MZP SJI1K,+@1[9!9[>-/6[D;@[5^VE>1ENAL/Y&=Y N]8AF./!I5C6J-7OKQ
M0S@,OAY(XZQ/X^R0][3KC'UAM<"A ]I]L$[#* [CQ%_OX8M[OO@@7]]]BYWN
MV\<>_\\>GX?_D/L[PU*C*MQ*T)#)1IAV;GIMOW7&[;#]-6]7UI2I@E,G5[@D
M:'!Z3@&H=@VT@I$K-WH+:6B0W;&DS8G*&M#]4DJS%2Q!OXO3/U!+ P04
M" !1@I%66LO/GH0"  ":!0  &0   'AL+W=O<FMS:&5E=',O<VAE970U,RYX
M;6Q]5.]/VS 0_5=.&9I &B1-*9M8&JDM0^L$$J*#:9KXX":7QL*Q,]MIX;_?
MV4FS3BO]DOC'O7?O7G*7;)1^-B6BA9=*2#,.2FOKRS T68D5,V>J1DDWA=(5
ML[35J]#4&EGN094(XRBZ""O&99 F_NQ.IXEJK. 2[S28IJJ8?IVB4)MQ, BV
M!_=\55IW$*9)S5:X0/M0WVG:A3U+SBN4ABL)&HMQ,!E<3D<NW@<\<MR8G36X
M2I9*/;O-/!\'D1.$ C/K&!B]UCA#(1P1R?C=<09]2@?<76_9KWWM5,N2&9PI
M\8/GMAP'GP+(L6"-L/=J\Q6[>KS 3 GCG[#I8J, LL98575@4E!QV;[92^?#
M#B".WP#$'2#VNMM$7N45LRQ-M-J =M'$YA:^5(\F<5RZC[*PFFXYX6PZR7XW
MW'#GD(%36+3?!E0!_D9C#O,<I>4%9TN!,)>6R15WRXDQ]-,<7Z%E7)P0>.;E
MHH:9DE:3WW"/@GGJDM<&?MUBM43]!$? )7PO56.8S$T26BK$R0FS3O2T%1V_
M(7H0PRVE* U\D3GF_Q*$Y$!O0[RU81H?9/S&Y!D,!Q\@CN(A/"RNX/CHY #O
ML+=WZ'F'A^QU)EYSR2V>WM OF/]G(EES0T"86ZS,TSX_VBSG^[.XQKTT-<MP
M'%!G&M1K#-+W[P87T><#-9SW-9P?8D^O&=?PR$2#^Y2UV N/=1-@G8Z&41*N
M]R0<]0E'!Q,^&"P: 3>\0#C^B4R;DWV9#Y/$$;PZZ#X#PIU^H?]UY:>"@4PU
MTK:MTY_V@V?2]MO?\'9JW3*]XM0Z @N"1F<?295N)T&[L:KVW;=4EIK#+TL:
MGJA= -T72MGMQB7HQW'Z!U!+ P04    " !1@I%6M\E_>YP'   N/0  &0
M 'AL+W=O<FMS:&5E=',O<VAE970U-"YX;6RUFUUOVS88A?\*X0W#!G2Q1,D?
M[9( CM5V&9HN2+<5P[ +QJ9MH9+HDE32 OOQ(R79%&V&M=I7-XEDFX?B8QY*
MQR3/'QG_(#:42O0ISPIQ,=A(N7TQ'(K%AN9$G+$M+=0[*\9S(M4I7P_%EE.R
MK KEV1 'P7B8D[087)Y7K]WRRW-6RBPMZ"U'HLQSPC]?T8P]7@S"P>Z%NW2]
MD?J%X>7YEJSI.RK_W-YR=3;<JRS3G!8B907B='4QF(4ODGBB"U2?^"NECZ)U
MC'13[AG[H$^NEQ>#0%\1S>A":@FB_CW0.<TRK:2NXV,C.MC7J0NVCW?JKZK&
MJ\;<$T'G+'N?+N7F8C =H"5=D3*3=^SQ5]HT:*3U%BP3U5_TV'PV&*!%*23+
MF\+J"O*TJ/^33PV(5@$\?J( ;@K@PP+XB0)14R ZM4#<%(@K,G53*@X)D>3R
MG+-'Q/6GE9H^J&!6I57STT)_[^\D5^^FJIR\G"T^EJE(]7<@T,]HMEQ6QR1#
MUT7=J_2W\V-")4FSG\Z'4M6I2PX7C?Z\UL=/Z(<8W;!";@1Z62SITA88JHO=
M7S'>7?$5]BK.RO49"N)G" <8HS_?)>C'[W]"*_G#=^%D^HOK"OUZOY'B#$5A
MI1?M]!PRR>DRV"UC-3?:?T%1I1L]H7M5"O6*$*CU3:%_WJC7T+6DN?C7<:E7
MM63LEM1#R0NQ)0MZ,5!CA:#\@0XN%;YQX,0'*98 B5DHXSW*V*=N4,Y9?I\6
M5==^ID[4(+:DO.[I?W!2B!7E_+"OUF"]%70%6XN-*S$]/C]<AI,@BH,@.!\^
MM*$!U6I!&^VAC;S09NIN@M@*O2'%$OWG\]E5+31JM2>*X_%!8^;>ZKIV)R Q
MB\QX3V;L)?.:L>5CFF4N%-Z27?O)^(AK&(]'T^-^,C[N4#@<C=L?M%HZV;=T
MXFWI'?M,,OD9T4_J<4-05X.] ET;/#EN<! <-Q>H3@O)=(]D>A*2=4G4B"$I
M10N6YZD:D6DAT;)4YZ4:1-2Q]DVA1I;=^3(5"U:J(DOT0++22=-;=U>:TR.:
M(Q=-H#HMFL_W-)^?1/.6?-;\!$H4P.L"O:6?)/KCD68/=/<8\<\-S>\I=][V
MO)5TQ08IE@")67##P#SC!?#/$(TF$$U0M01*S>;9>F8.O\'\)-?V=B+URG9&
M&CXQ3!Y[&ZIBFQ<VO'!W>_]-"5?>9EY'^X4[$X-42Z#4;*@F%X0]!(,0-!F
MJB50:C9/$PY"?SKX:E.#9H)&K6UJ_)2I^X@%H<D%H3\8>$R]X8J>U]:0(6 .
MJI9 J=E83:@(QSW8&C1O@*HE4&HV3Q-=PM.R2V=;@R::\#C2X"ARV[J/6!.:
M7!.>%FR.;?V*E=SO:M#8 JJ60*G95$V^"9_WX&K0/ .JED"IV3\!FT2#O4_X
M7^UJOVQ7I(W:*:Z&JMCF91(+/BVQ.%R=/OCOU7[ESL@@U1(H-9NJR348P[L:
M@T8:4+4$2LWF:2(-]C[B?[VK05--HV:[.G:[NH_(@DUDP?[(\E9UMWGSL^*;
ME-RG6:KH><T,&E9 U1(H-1NFR3-XU(.908,,J%H"I6;S-$$&^Z='CLPL&C?7
M-Z#:S>U?QIU\08,-=DR0.&W=1V3!)K)@?V2YH424O![TKHMM*=&.Y1V17[A9
M@Z864+4$2LVF:H(-GO;@;]!( ZJ60*G9/$VDP?XYFU<DY>@O/8.%?E^I?BI)
ML4[O,XIF0E!E\*->[.0+&G$:-3T[L#=X<!8$D]&AP?M(+Y%)+Y$_O1P;?%ZM
M]*$<S:3D==?\HM?]E71>Y0$Z00.E9@,V<2<*>U@T QIT0-42*#6;IPDZD7\"
M!\3K_CHZ\ZW5PM#R>C@]<#I4I3:XUN(M?Z(Y O,,)<W\_PD&AUW&!;N.JX_D
M$YGD$\4]&!PT_("J)5!J-D\3?B+_9 Z,P4'#4*-V:/#GAP;O(^5$)N5$_I0S
M6W-:8WF?RHW")3E#-V2QT5WQ%>,U0&0ML_5Z'C3P@*HE4&HV:A.+HDD/G@<-
M1*!J"92:S=,$HL@_TW-;\L6&"(JV/%U0O<:3&+!.EM/C^%RM+CP,T'-_S9TY
M]1%T(A-T(G_0 5@VW-1@+_5U_?0P]U]+9W)]Y)S8Y)S8GW/VLPV2U:;E%.UH
M4O$,O>9,".<RZUIWVN9U ,I?=5=04&HV*)-78O_TS($5TT(!(P6B8J&ER&+Q
MU"_?C6Z[8T6N;N6OOS.M/M)(;-)([$\CKFYE;5R15%4K%4;TKKQ7+DT)3ZF[
MHV''D.8$"#K/ J5F S2I)/:GDK>E?O[0(_YLH?3U048*]X8'T SRA>L*S_#8
MB:N772.M;2/^:1;?0G]_T<Y\XJ/NB">1XQ=JJ&IM(B8NQ%_8%/(-3[WH/_2:
M%NK&F55+XV?+/"U2)4#T!D#TLMYBX'U&]E]<9^:@DRY0:O878^)(W,/JL1@T
M<X"J)5!J-D^3.6+_5(S[V:\-]XYF1._EF#,AW;<8T 32J+5'B(EK"@NJUIK;
ML+7!-*=\76W4U?-YZK&DWFNZ?W6_&7A6;8$=FH_7.XEO"%^G:CC(Z$H5#<XF
MRC"\WIQ;GTBVK;:KWC,I65X=;BA13]KZ ^K]%6-R=Z(KV&^1OOP?4$L#!!0
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
M3)*V%SN]$"! K6U1281F9W_\RH8B;,L*,.(FP7!T])X#>O7XH[_BXIN<4ZK
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
MRS60!(3IH+]?<JX>;\P U;GI^%]02P,$%     @ 48*15B-[PQ5T @  (08
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
MA*3Y/SX6($X$;N\-@5<(O',%?B'PSQ7T"D'O7$&_$&1-M_.V9^ B+'$PX>R
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
M3E-HI;CGQ/;<KJ.P%01#?]V [-3(SH'(;A.R%'=WD?U]R&Z-[!Z([#4ANY]
M]FID[T!DOPG9^P2R7R/[!R('3<C^.V0GZ.Y!#FKDX$.DZP!F>W:;J(-W7U"K
M$[[#^CN=R3;Y6Z:67&A(<4&ZX*Q/8:NR<983(W/7K.;24.MSPQ7]:U#9#;2^
MD-)L)[;_U7^OZ"]02P,$%     @ 48*15JCI-#[I"0  *7,  !D   !X;"]W
M;W)K<VAE971S+W-H965T-C@N>&ULM9U=;^.X&87_"N$NBET@&UM?]F2:&$A"
MD4TQZ0;)[/9BT0O%HAUA].%*<C(#],>7DA73E&3&2D[G8A++?!_2XHE>\IBB
MSE^R_%OQ)$1)OB=Q6ER,GLIR_7D\+A9/(@F*TVPM4OG.,LN3H)0O\]6X6.<B
M".N@)![;D\ETG 11.IJ?U\?N\OEYMBGC*!5W.2DV21+D/ZY$G+U<C*S1ZX'[
M:/545@?&\_-UL!(/HOQ]?9?+5^,=)8P2D191EI)<+"]&E]9G[ME50%WBCTB\
M%'N_D^JC/&;9M^K%37@QFE0M$K%8E!4BD#^>Q;6(XXHDV_&?!CK:U5D%[O_^
M2F?UAY<?YC$HQ'46_RL*RZ>+T:<1"<4RV,3E??;R=]%\(*_B+;*XJ/\G+TW9
MR8@L-D69)4VP;$$2I=N?P??F1.P%6.Z! +L)L-L!WH$ IPEPV@'3 P%N$^ >
MVR2O"?".#9@V =-CFS1K F9U9VW/;MTU-"B#^7F>O9"\*BUIU2]U_];1LD>B
MM)+B0YG+=R,95\ZO<Q%&);E<Y4)(A94D2$/R)4M7OY*O(D\(%8\E^95<AK*4
ME$X0DYMT^P=0">EG*LH@BG^1)7Y_H.3GGWXA/Y$H)5^?LDTA2<7YN)2-K*H:
M+YH&76\;9!]HT!FYS=+RJ2!^&HJP)YZ:XRW[+0 W UP38"Q/[^X<VZ_G^,HV
M$B\WJU,R<4^(/;'MOC-B#O_')CXECE6'.WTGY(WP(#6&^\>']S6>'1]N]77&
M&Z=NG<OP21T^,W2%LY.[4_.< [Q:SC=I4>:;6NU_?I$%R$TIDN+?/:V[VM+<
M?EJ5)CX7ZV A+D8R#Q0B?Q:C^5__8DTG?^OK9B2,(F$^$L:0, Z":6)Q=V)Q
M3?3YO7C.XN<H79$X"U(B$WE1RHN:/- G%2-KJ%20,+J%36M8-31YGEO>V61R
M/G[>UP"R2H:$<1!,TX"WTX!GU,!-6@I)+8G_78[^"G%29\2^_C=RAO8_$D:]
M3O]/.[W?+>.TR[!N&:]=AH,:KO75=-=7TR/_7IM1#0L641R5/\B?MR)Y%'GO
M)=[('-IO2!A%PGPDC"%A' 33)#/;268&'0_,D&)!PB@2YB-A# GC()@FED\[
ML7PR7E_^"/(H>(R%G.$T22$/2M$G$R-GJ$R0,&K^A)-3;]*G!V03&!+&03!-
M#V<[/9P9S]:7FZO?[G>YA?R7O"\!&2L9*A8DC")A/A+&D# .@FD:LB;*@)E
M4U"# ^D%2J-0F@^E,2B-HVBZ:/9<.^NX:<FA#&2.'ZP2)(TVM$][$XG)Z<1J
MS4B@=3(HC:-H>N_;JO=M8^\S$8H\B G;I&%!_.52U(8^>7@)UN1>*N+C2<G<
M@L'Z0=(HE.9#:0Q*XRB:KC-EEEI8M]2"VJ50&H72?"B-06D<1=-%HTQ3R^R:
MOIV:H$XIE$8;VIF>FB9>.S=!S5(HC:-H>O<KO]0R&Z:W41HEFP20@:"&*I1&
MH30?2F-0&D?1=#4I1]>:8C,0U,V%TBB4YD-I#$KC*)HN&N7I6D87<'Z=)4E4
MUGI9"G$X#T'-7"B--K1V'K(ZB0CJU$)I'$735:#,6LOL9=Z)?"$E$*P$"<)0
MA*3,R/.K@WM0$U#G%DJC#:VMB6E;$E"S%DKC*)HN">776F;#MF=L O)PS14/
MU@W4Q872?"B-06D<1=-7>2DGU\8ZN3;4R872*)3F0VD,2N,HFBX:Y>3:'W1R
MS?&#50)U<AM:*R59[90$K91!:1Q%T[M?6;FVV<J]#;YCILOF>@;+!&K80FD^
ME,:@-(ZBZ6I2AJV--6QMJ&$+I5$HS8?2&)3&431=-,JPM<V&[9'393-EL%:@
MMJW=;]LZ[>DRM%8&I7$435>!\FUMLV_[KNFRF3E8$U"/MJ&UQR8=24#-5RB-
MHVBZ))3Y:IO7T_:,34#397/%@W4#M6FA-!]*8U :1]%T>2F;UL:NO;6A?BV4
M1J$T'TIC4!I'T731*%?7-KNZ;T^7H0XNE$;M7@?7[J0DJ(,+I7$43>]^Y>#:
M9@?W*DB_D6Q)+A.11XO@A/SS]/)T/Q_5-ZU^J6[7,N8?J%T+I5$HS8?2&)3&
M433]3E!EUSI8N]:!VK50&H72?"B-06D<1=-%H^Q:QVS7MD1S0M9YE"ZB=1 3
M.8.*LC!:D'7PHWJO5T-0,[>A:7?MS;Q)^Z8\"JW5A](8E,9[SLA4/R-ZORN?
MUC'[M.](//+@WK8)ZOW+YR"*Y01[K]R#6&1I6,'3L+X6=;9E,&4S<],'BPIJ
M_4)I/I3&H#2.HND"W=O8 +RS 79K ^S>!MC-#;"[&V"W-_A_6+^.LGX=L_5[
MMTM>09)MI&KD%2X\<'][@VK=1MY*-=?F"@<+ 4GSH30&I7$431>"<G\=L_O[
MOO1V)999+O;2UM>,?'T2 [,7U$.&TBB4YD-I#$KC*)JN/V4U.]AUO@[40(;2
M*)3F0VD,2N,HFBX:92 [YG6^@[(7U#R&TFA#V\^L9YW,ZD/K9% :1]%T(2A3
MV#&;PF]FK_=]2V6N=;!FH%8RE.9#:0Q*XRB:KBWE.#MGV,P$M9:A- JE^5 :
M@](XBJ;O&Z>L9=?H0LYKC<@+4NMJ<R(O1-7VL-6%Z"K+);:^) 6R)?+=/C69
MZQFJ)BB--C0M;5G=;>6@7C*4QE$T727*2W;-7G*US2HIJXE5-6HA+_6VN2(D
MP;/(JW4XVC9#))-'24#6M<M<B:N,DMYO0,VU#M8,=,&PV[M@>#J3NE'_VCM!
M] >YK6(,VE*.HNG:4'ZS^T&_^>TAS8=]97,3!PL)ZBM#:3Z4QJ TCJ+I0E2^
MLHOUE5VHKPRE42C-A](8E,91-%TT>QOGFGWEUY6#C[M!SL(TR$$ZJ==0&G6[
MKK?=_8;5AU;*H#2.HNE:4-:R^\;"XCQ;"!$69)EG"8EW8YZX&2,OZI34JXON
MAK.6[7:^<C#7/[C#MS3/^#6'#ZV306D<1=/[6UFYKGG5,&;D OEJP=S2P1<6
MJ$L,I?E0&H/2.(JFZU&YQ"YVF;$+=8JA- JE^5 :@](XBJ:+1CG*KME1'CB
M@1K%4!J%TOR&I@V'[,XN\ Q:*4?1="TH!]C]X)KCHQ+:;^63R%^?(F#.6E '
M&4JC4)H/I3$HC:-H^E,GE(/L81<G>U"C&$JC4)H/I3$HC:-HNFB4H>P=N9?$
MVP\K@7K$4!IM:/LSL)EG=^=@/>7<3BD&;1M'T?0.5JZP9W:%#WZOM'</-Q/5
MM*E:#]';\5!/%TJC#:WU$)INOW>+>=UB#-HVCJ)M.WZ\]\ ^.:I8U<]B+,BB
MZK7M<^5V1W?/>[RLGW+8.DZMSVS[U$:%V3Y$\C;(5U%:D%@L)7)R.I-_)_GV
MN8S;%V6VKA\+^)B599;4OSZ)(!1Y54"^O\RR\O5%5<'NZ9CS_P%02P,$%
M  @ 48*15L+ 9K8_!   :!0  !D   !X;"]W;W)K<VAE971S+W-H965T-CDN
M>&ULM5AM;^(X$/XKH^S>:E?BR N0TBX@M0VY%UTEM-W>?3C=!T,,1$ULSG9*
MD>['W]A)4^!"6B2?5!7'F>?Q>)[QV/%HR\6C7%.JX#G/F!P[:Z4V5ZXK%VN:
M$]GE&\KPS9*+G"A\%"M7;@0EB0'EF1MX7NCF)&7.9&3Z9F(RXH7*4D9G F21
MYT3L;FC&MV/'=UXZOJ6KM=(=[F2T(2MZ3]7#9B;PR:U9DC2G3*:<@:#+L7/M
M7\6^IP'&XO>4;N5>&_14YIP_ZH=?DK'C:8]H1A=*4Q#\>:*W-,LT$_KQ=T7J
MU&-JX'[[A3TVD\?)S(FDMSS[(TW4>NP,'4CHDA29^L:W/]-J0@/-M^"9-/]A
M6]EZ#BP*J7A>@=&#/&7E+WFN K$'\/LG $$%"(X!@Q. 7@7H'0%.NM2O /WW
MNC2H (-C0.\$(*P H8E]&2P3Z8@H,AD)O@6AK9%--XQ<!HT!3IG.K'LE\&V*
M.#69D1TFZ^(19H*K2FULK@3)X3=.&/P(UTF2ZGZ20<K*7-96GR.J2)I]08N'
M^P@^?_P"']$ OJ]Y(0E+Y,A5Z* >QEU4SMR6S@0GG.G!'6=J+6'*$IHTX*-V
MO!^T$+@8F3H\P4MX;H)6QE\+U@5_T(' "_RF";T%S[K0\T_"HS?@A-7P7@-\
M^GYXT "/V^%W9 =>:-!>2RA[=:;U#%W_!-WT6:5L5:1RC85) 5]"1.<*/GT8
M!K[_%6:SF4FX!C]O6HEU[;V2&[*@8P>+JZ3BB3J33Q_\T/O:I)A-LJ@D"PV9
M+N)/$PS5T[Y$_[7H]\/PT"BVY-.!+OU:EWZK+F]6@#_O:#ZGXB_X!WX2E#+<
M*W@"MX)B68 'INU?3)K$:QW]7/%LDD4VR:8VR6)+9 ?Y,*CS8=":#V95IDPJ
M49B%NL2!@.2\8*I)WE:R<^6U21;9))O:)(L'#37!>RT<![*%M6QAJVQZJ79@
M0W9&-$5%WK0!W[22G"N73;*H?7K?U[3>(CK 1;I*\4"2[4"?M9,BHPDHC@<C
M50@*6)'TYE7N74$'MD1"P21=X,L$\&P"<XYF*<,P4:F X!\(HJC>E?RN]P-L
MJ$ [5N0=//LN1($[%RP%ST&A'YFNB@F:=YLRQ6908DMD!QEU46?4Q3LRRH0T
M53LSX::,:B4Y-Z-LDD7MT],98LXWIXY'4YO.Q);(#I0<UDH.WZ%DG>[BA)*M
M).<J:9,L*LF&^\>LKN<?G;1LCAA;(CN0Z[*6Z[)5KFNSV>I:I"N>J3;XV;7"
M+_#&T_%E^VY2RM$ZXKERV"2;VB2++9$=R.9[K]_2WO_UB=/.?.[BJ]@.<F)P
MG!.1U3&G5MEB6VREDN[>!4E.Q<I<94E8Z'567@;4O?5UV;6Y)#KJC_RK:7GI
M]4I3WL'=$5RA3$)&ETCI=2_PD"?*:ZWR0?&-N8:9<Z5X;IIK2A(JM &^7W+\
M_*H>] #UY>+D7U!+ P04    " !1@I%6 1*9:' #  !;#0  &0   'AL+W=O
M<FMS:&5E=',O<VAE970W,"YX;6S%5VUOVS80_BL';1A2H(M>_-K,-N#839MA
M00-G73\4^\!(9YN(1+HD9:? ?OR.E*Q8C:/"A8#Z@T52O(?W/+P3CZ.=5 ]Z
MC6C@,4N%'GMK8S87OJ_C-69,G\L-"GJSE"ICAKIJY>N-0I8XHRSUHR#H^QGC
MPIN,W-BMFHQD;E(N\%:!SK.,J:^7F,K=V N]_<""K];&#OB3T8:M\ [-Q\VM
MHIY?H20\0Z&Y%*!P.?:FX<4L= 9NQC\<=_J@#9;*O90/MG.=C+W >H0IQL9"
M,'IL<89I:I'(CR\EJ%>M:0T/VWOT*T>>R-PSC3.9?N*)68^]H0<)+EF>FH7<
MO<>24,_BQ3+5[A]VY=S @SC71F:E,7F0<5$\V6,IQ(%!V'W!("H-HF\->B\8
M=$J#CB-:>.9HS9EADY&2.U!V-J'9AM/&61,;+NPVWAE%;SG9F<D<%=\R*R5<
M<<%$S%D*UT(;E=-F&0U,)+#@^@%NF*!]M8/P.TR3A-MM<).+8+*;<C9'PWCZ
MBF9\O)O#V:^O1KXA+^U:?EQZ-"L\BE[PJ ,W4IBUAK<BP:1N[Q.[BF*TIW@9
M-0+^F:?GT E>0Q1$P3%_FLT_Q*8R#QO<Z52*=QQ>]P6\&=-KN*+T@?>8K+A8
MP><;S.Y1_7O$M\M&+)OC%WK#8AQ[E,0:U1:]R6^_A/W@CV-$6P*KT>Y6M+L.
MO?/]0/LVO/8Z3&U*4UBAACG7<2IU3G[ Y[\("JX-9OJH1-TV)6H)K"91KY*H
M]_W(V#">@$%%N5[DE%R"WK&-/D:]$>]4Z@58WX'9K_]V,@CL;^1OCY#J5Z3Z
MS:24U!IFN5(HXJ^T]\0-M8$%,P@SRG1%7_+&%&C$/Y5D2V U*0:5%(.?E *#
M-B5J":PFT;"2:-@8+?7PN*.XA[^?<N$8]>&SJ(WJ45N0:ESV!TF]J4B]:3$%
MX#\X[8AH7/S4S6\)K*93&#P5(\%/RI!RX994:@NM+M-!S18V!M0TDSF5870R
MO*-"'188ITQKON28P%+)C$2*\RQ/*;X2^#"[!BZ,)$5CF2&<O7VD.X#&8Z79
M9?/")\L4/DO.WO#YB>(?E*\9JI6KZC7$EF11R5:CU<UAZNIE_VEZ<>VX88JB
M1$.*2S(-S@=TJ*FBDB\Z1FY<,7PO#976KKFFVP\J.X'>+Z4T^XY=H+I/3?X'
M4$L#!!0    ( %&"D5:>]7QA2 ,  )T(   9    >&PO=V]R:W-H965T<R]S
M:&5E=#<Q+GAM;*U6;V_3/A#^*J> T";!TJ9;@=%&VEKVHV@34\N?%X@77G)M
MK/E/?[;3#CX]9R?-NI(5A'C3VF??<W?/G>\R6&MS:PM$!W=2*#N,"N>6IW%L
MLP(ELT=ZB8I.YMI(YFAK%K%=&F1Y4)(B3CJ=?BP95U$Z"+)KDPYTZ017>&W
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
MI'B[X"SD(K] ?S[+,K4YR!/46^TG_P%02P,$%     @ 48*15LD@5!'& P
MV!   !D   !X;"]W;W)K<VAE971S+W-H965T-S,N>&ULK9C;;MLX$(9?A= 6
M10MDH[.<9&T#CMWM <VND;2[%\5>T-+8)BJ17I**X[<O*=FR9<E$!.@BB0Z<
M?_1_E#B<#+>,_Q1K (E>LI2*D;66<G-GVR)>0X;%-=L 57>6C&=8JE.^LL6&
M TZ*H"RU/<>)[ P3:HV'Q;4Y'P]9+E-"8<Z1R+,,\]T]I&P[LESK<.&1K-92
M7[#'PPU>P1/([YLY5V=VI9*0#*@@C"(.RY$U<>]FKJ\#BA'_$-B*DV.DK2P8
M^ZE//B<CR]%/!"G$4DM@]><9II"F6DD]Q_][4:O*J0-/CP_J?Q;FE9D%%C!E
MZ;\DD>N1=6.A!)8X3^4CVWZ"O:%0Z\4L%<5OM"W'#M3@.!>29?M@]009H>5?
M_+('<1+@!A<"O'V =QX070CP]P'^:S,$^X"@(%-:*3C,L,3C(6=;Q/5HI:8/
M"IA%M+)/J)[W)\G57:+BY/B1[7 J=^CO14I6N)B*W]$D28@^Q"GZ3,MW2]]X
M-P.)2?I>C?C^-$/OWKQ';Q"AZ-N:Y0+31 QMJ1Y)"]OQ/OVT3.]=2.]ZZ(%1
MN1;H TT@J0O8RDMER#L8NO>,BE\PO4:^>X4\Q[UI>Z!7AWM^2_CL]>&>P8U?
M38]?Z 47]#[FF&,J 1+T0"C)\@P=9FR.=^K[DVW0[XVB>BFY$QL<P\A2:X4
M_@S6^.UO;N3\T0:L%(L*,;V,/(]O0\<9VL^G6'K*6(,45) "(Z3F.WR%ICGG
MBDX;'*-85SBE6'@"QQUXX1F<H$%0+<M'@C73864Z[&@:_:5^#+Z->EU]APW?
M?N">^VX."OS(;?<=5;XCH^])'/-<?0ZE?P*BFNLK].$E!B'.OQ TRZ&-AS%/
M5QY1TZI>/VHXFF,\/VRG,:AH#(PT/C$*NZVJFF@BA-HES',>KU491&HY1E])
MK HTH,F* Q0D?CQ M@#^7QL.8Z*N./H4F_4D5@-\4P&^,0(^O$/?@&=H#IRP
MI V>6<1UT XP;ZV/QLBNI'H2JY&ZK4C=&DU>J$\G"U0;N-O&TNB&SGEUF1HS
M=X74DU@-DNL<]UM.G\7*K-;UL]RKU<I5U*CE?>6L$SK9D;H]5S:S8&=(;K.V
M-5[)65\YZY"\(R3/"*F]U+5N!LU*G>EXS5?(;]+Q&M]U>&G'XQXWPZYY-]Q?
M[3<GZLRDN44.FDAZW2+;)RU?!GQ5M,X"Q2RGLFR6JJM5>SXIFM*SZU/=MA>M
MY%&F[/D?,%\1*E *2R7I7 _4G/.RC2Y/)-L4C>6"2=6F%H=KP EP/4#=7S(F
M#R<Z0?7/C/$O4$L#!!0    ( %&"D5:M.U(* @(  $H$   9    >&PO=V]R
M:W-H965T<R]S:&5E=#<T+GAM;*5478^;,!#\*RN>6ND:$VB:W(D@)1=5O:I5
MHUS;>W9@ ];Y@]I.N/S[VH8@*EWNI2_@]>[,SI@U6:OTLZD1+;P(+LTRJJUM
M[@@Q18V"FHEJ4+K,06E!K0MU14RCD98!)#A)XO@3$93)*,_"WE;GF3I:SB1N
M-9BC$%2?U\A5NXRFT65CQZK:^@V29PVM\!'MKV:K740&EI()E(8I"1H/RV@U
MO5NGOCX4_&;8FM$:O).]4L\^>"B74>P%(<?">@;J7B>\1\X]D9/QI^>,AI8>
M.%Y?V#\'[\[+GAJ\5_R)E;9>1HL(2CS0([<[U7[!WL_,\Q6*F_"$MJN=S2,H
MCL8JT8.= L%D]Z8O_3F, ,GL"B#I 4G0W34**C?4TCS3J@7MJQV;7P2K >W$
M,>D_RJ/5+LL<SN;?T%DR\ %69<G\.5$.#[+[V/[4WFW04L;?9\2Z;AY#BIYY
MW3$G5YB_4CF!='H#29RD_\*)$SDH30:E2>#[>(7O1X/::9(5!,TW\!1.'$M8
MG5RF0MBAG\*A GZB%J_I?KM/"F>DVL M""5M;6"Z@)*>S1L6TL%"^I\6-LP4
MZB@M[*AU^2WJ J5]S437Z39T\C?OE,>3.%W,,W(:*R2CT?"W[#O5%9,&.!X<
M,)[,W9CI;G*[P*HF3,M>63=[85F[RX[:%[C\02E["?P #K^/_"]02P,$%
M  @ 48*15G82=0Z* @  =P8  !D   !X;"]W;W)K<VAE971S+W-H965T-S4N
M>&ULK55=3]LP%/TK5QF:0-I(FC24L312*4-C8@)1V!ZF/;C);6/AV)GMM.S?
MSW9"%&A /.PE\<<])^=<7]\D6R'O58&HX:%D7$V]0NOJQ/=55F!)U*&HD)N=
ME9 ET68JU[ZJ))+<@4KFAT%PY)>$<B]-W-JU3!-1:T8Y7DM0=5D2^?<4F=A.
MO9'WN'!#UX6V"WZ:5&2-"]1WU;4T,[]CR6F)7%'!0>)JZLU&)_/8QKN 'Q2W
MJC<&ZV0IQ+V=7.13+[""D&&F+0,QKPW.D3%+9&3\:3F][I,6V!\_LI\[[\;+
MDBB<"_:3YKJ8>L<>Y+@B-=,W8OL56S].8":8<D_8MK&!!UFMM"A;L%%04MZ\
MR4.;AQY@-'X!$+: \*V J 5$SFBCS-DZ(YJDB11;D#;:L-F!RXU#&S>4VU-<
M:&EVJ<'I]!)-#A1\A(6IC[QF"%<K."6,\ QAX>IHQG.XT@5*N.!-V=C\WR C
M&G.X%7!5H32+? TMV_X9:D+9@:&]6YS!_MX![ 'E<%N(6A&>J\371KM5X&>M
MSM-&9_B"SF^$'T(T^@!A$$8#\/G;X>%3N&\RUJ4M[-(6.K[H!;X=R[]F2Z6E
M*<K?0]X:LO$PF;VH)ZHB&4X]<Q,5R@UZZ?MWHZ/@\Y#3_T3VQ'?4^8Y>8T_=
M+0>Q@CN%,%,*]>!9-B1'CL3VD4TZ^31._$W?QF[,*.@%/9$W[N2-7Y77E.DL
MRV1M2O/+@^EUYG"&%#8\<>_KX21^IG W)@HGPP+C3F#\JD!7+7!)R9(RJNFP
MMG@G,W'\7-MNS'%P_$R;WVL+MB5_)W)-N0*&*X,*#B>&1#9MKIEH4;E.L13:
M]!TW+,R? :4-,/LK(?3CQ#:?[E^3_@-02P,$%     @ 48*15O%UQTUB @
MNP4  !D   !X;"]W;W)K<VAE971S+W-H965T-S8N>&ULK51=;],P%/TK5V9"
MFP3-1S] (XVT=@.&F*@V!@^(!S>Y;:PY=K"=MOQ[;"?-NM%6// 2?]US?,^)
M[TW64CWH M' IN1"CTEA3'4>!#HKL*2Z)RL4]F0A54F-7:IEH"N%-/>@D@=Q
M&(Z"DC)!TL3OS52:R-IP)G"F0-=E2=7O"7*Y'I.(;#=NV;(P;B-(DXHN\0[-
M?353=A5T+#DK46@F!2A<C,E%=#X=N'@?\(WA6N_,P2F92_G@%M?YF(0N(>28
M&<= [;#"*7+NB&P:OUI.TEWI@+OS+?M[K]UJF5.-4\F_L]P48_*60(X+6G-S
M*]<?L=4S='R9Y-I_8=W$CD8$LEH;6;9@FT')1#/23>O##B Z!(A;0/P<,#@
MZ+> OA?:9.9E75)#TT3)-2@7;=G<Q'OCT58-$^XOWAEE3YG%F?0S6@\TO 8_
M@:G4!JY%\SJ<S:>7:"CC9S;B_NX23D_.X 28@*^%K#45N4X"8]-P9$'67CEI
MKHP/7!G%<".%*31<B1SSIP2!S;\3$6]%3.*CC)^HZ$$_>@5Q&/?W)#3]=WA\
M))U^YVG?\PT.\'U @8IRL/; 16Y_&M-&4?=<X6ICR\_Z_.,&RSFJG_O<.TKN
MJOI<5S3#,;%EJU&MD*0O7T2C\-T^Y?^)[(D/@\Z'P5$?OE3H9(OESN/:^UX:
MFI&G<6UGE0Y&81*L=H7\'3.,'F.:_(*=.BA1+7U[T)#)6ICF-76[70>Z\(7W
M;']B.U/32!YIFK9V0]62"0T<%Y8R[+T9$E!-JV@61E:^VN;2V-KUT\)V5U0N
MP)XOI#3;A;N@Z]?I'U!+ P04    " !1@I%6*8*C_*,"  "H!P  &0   'AL
M+W=O<FMS:&5E=',O<VAE970W-RYX;6R-E6MOVC 4AO^*E553*ZW-C82$A4B]
M:!I3*Z%>M@_3/AAR(%:=.+,-M/]^MD-3MAC8%^)C^YSG?1-\G&T8?Q8E@$0O
M%:W%V"FE;$:N*^8E5%A<L 9JM;)@O,)2A7SIBH8#+DQ21=W \V*WPJ1V\LS,
M37F>L96DI(8I1V)559B_7@%EF['C.V\3]V192CWAYEF#E_  \JF9<A6Y796"
M5% +PFK$83%V+OW1E6\2S([O!#9B9XRTE1ECSSJ8%&/'TXJ PESJ$E@]UG -
ME.I*2L?O;5&G8^K$W?%;]2_&O#(SPP*N&?U!"EF.G<1!!2SPBLI[MOD*6T.1
MKC=G5)A?M&GWQI&#YBLA6;5-5@HJ4K=/_+)]$3L)0; G(=@F!$9W"S(J;[#$
M><;9!G&]6U73 V/59"MQI-9?Y4%RM4I4GLQO05D2Z!S=8;GB1!(5L 6B>AI1
M@F>$MI.G-R QH6?H!)$:/99L)7!=B,R52H6NY<ZWQ*N6&.PA?L/U!0K]3RCP
M@A ]/=R@TY.SO\NXRD3G).B<!*9N>-C)S\N9D%Q][%\V:6V)@;V$/@$CT> Y
MC!WU%Q? U^#D'S_XL??Y@,"P$Q@>JIXKOP.;IC8K-EGZ$*WST LR=VU!#3K4
MX!@JLJ':K&@'Y:>I'15UJ.@8*K:AHCXJ&MA1<8>*CZ&&-E3<1PWVN!IVJ.$Q
M5&)##7NH=,^G2CI2<I#T6(+JI@L)W,9+>CS/CDL[7'H8QR2FR)P5-,6OJK]*
MZQE.>^ DC>UHWWOO-=Y!^"T(,4*3JEE)*-"D5J9!2&L+\7K\\W@??Z?7^?]M
M_O:]MUD%^+U3F83_OGMWI^_J.^P.\R6IA>J>"Y7E70R5?MY>"VT@66-:\8Q)
MU=C-L%17*7"]0:TO&)-O@>[NW>6<_P%02P,$%     @ 48*15F0;R.R% @
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
M%,>>.;,*Y0J]Y.V;\"SXU.7T/Y&]\-UO??=?8T^FHB@)WX"R/YB"I3FL'+0
M+$HF-HCJM EU5:&F'CAJVX=623@<#LSG6.W:^S,K&D;1<]8+W8-6]^!?=:\(
MJ[!+=LT<1CN*@EZ\I[HSJ;\GVM\YT07*I6MT"E)1<5T?A7:U[:47KH7LK4],
MCZU;XC--W:!G1"XI5\!P82B#WM (DW73JR=:E*YOW MMNI ;YN:>0&D33'PA
MA-Y.[ ;MS9/\!E!+ P04    " !1@I%6';001%P(  #@30  &0   'AL+W=O
M<FMS:&5E=',O<VAE970X,2YX;6S%G&MOVS84AO\*X0U#"[2U1<FW+C&06!S6
M8=V"!ED_%/O V(PM5!>/DIUDV(\?=8EI2BIC!6_A?FA\(1^2YU"'.J]HGMTG
M\FNZ%B(C#U$8I^>]=99MWO?[Z6(M(IZ^2S8B5M_<)3+BF7HK5_UT(P5?%I6B
ML$\'@U$_XD'<FYT5GUW)V5FRS<(@%E>2I-LHXO+Q4H3)_7G/Z3U]\"E8K;/\
M@_[L;,-7XEID-YLKJ=[U]Y1E$(DX#9*82'%WWKMPWC-ODE<H2OP5B/OTX#7)
MAW*;)%_S-Q^6Y[U!WB,1BD66([CZLQ-S$88Y2?7CGPK:V[>95SQ\_43_I1B\
M&LPM3\4\"3\'RVQ]WIOTR%+<\6V8?4KN?Q75@(8Y;Y&$:?$_N2_+CJ<]LMBF
M61)5E54/HB N__*'RA '%:CWC0JTJD!K%9QO57"K"NZQ%;RJ@G=LA6%5H1AZ
MOQQ[83B?9WQV)I-[(O/2BI:_**Q?U%;V"N)\HEQG4GT;J'K9['K-I7A[J4R]
M)/,D4O,OY84'WY*+Y3+(7_*0?(C+*9E_\<H7&0_"UZK$S;5/7OWX^JR?J9[D
MO/ZB:O6R;)5^HU6'DH])G*U3PN*E6)J OAK"?AST:1R7U$K\C<?OB.N\(71
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
MK[F@10V6"HJ,5&_\4N=A#^ &)P!>#?#:@-X)@%\#_/<">C6@IS-36=%YB+#
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
MWV=J,2??0<Q)C9CW3L7</I36OZ\$%7,HFAF#%G/R'<2<G(HY/OX,V#Z.UAF
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
MV*E21ON4U\#!MO+0'W:4]P1=75YVE.\'^?[0ZQ<>ML+#H\(/UY(^+^%>[OS
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
M4<..KHR/\H_[]?\F)6IR6JA=2U+.S6HW5<JEE4Y@R79;)6V@B?%)3! >=36
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
MY2FI\D+R?7$,Z)Y+R=/BXXY1*)C* )YO.)=/%RI ?59M^2]02P,$%     @
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
MI("PZBBTNA&T* \'[ZD0-"LO-T!B8"I /E]1*IYNU 3-@?3\/U!+ P04
M" !1@I%6^2?MVC8%  !5(   &0   'AL+W=O<FMS:&5E=',O<VAE970Y-BYX
M;6S%6EUOVS84_2N$5PPMT,8B]65ECH'$:K<,R1K$R_90[(&Q:5NH1+HD':?_
M?M1')$MB.,=CD9=8DN\]Y#WD/3X0,]XQ_E6L"9'@,4NI.!NLI=R<#H=BOB89
M%B=L0ZCZ9LEXAJ6ZY:NAV'""%T52E@Z1XP3##"=T,!D7SV[X9,RV,DTHN>%
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
MT@:8_:40>CNQ'QA^5?D_4$L#!!0    ( %&"D5:7X3!=! ,  "H)   9
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
MDL7G4]2$LEV3P?7@%#[O[,*.A5Y-1:H(CU3+U4:WS=X=Y1I/%AJ#9S3^(/P
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
M]I1$49+X$<#\#J((0^!IQ!', 7C D"BR[\&]]U&X>4^%[?\GQW\ 4$L#!!0
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
M56\/T-NKWAZ@MU>]/4!O7SWL!NCM56\/T-NKWAZ@MU>]/4!OKWI[@-Y>]?8
MO8/J'0!Z!]4[ /0.JG< Z!U4[P#0.ZC> :!WJ/ZL!.@=5.\ T#NHW@&@=U"]
M T#OH'H'@-Y1]8X O:/J'0%Z1]4[ O2.JG<$Z!U5[PC0.ZK>$:!WK#:; /2.
MJG<$Z!U5[PC0.ZK>$:!W4KT30.^D>B> WDGU3@"]D^J= 'HGU3L!]$ZJ=P+H
MG53O!- [59L% 7HGU3L!]$ZJ=P+HG57O#- [J]X9H'=6O3- [ZQZ9X#>6?7.
M +VSZIT!>F?5.P/TSJIW!NB=J\W> +VSZIT!>A?5NP#T+JIW >A=5.\"T+NH
MW@6@=U&]"T#OHGH7@-Y%]2X O8OJ70!Z%]6[ /0NU6$=@-ZFJX_K /PV775@
MIP,(;KKJR$X',-QTU:&=[CL5'Z?/?3_>BK[65<!WFCU=/MO?OO^Z_+I8WS!7
MIMO[C/'I+U!+ P04    " !1@I%6A'6;AV,"  !A.@  $P   %M#;VYT96YT
M7U1Y<&5S72YX;6S-V]]NFS 4Q_%7B;BM MA@ U/3FW:W6R_V @R<!H5_LMTN
M??LYI*VTJ8M69=*^-T&)[?,[^$B?NUQ_>YZ-6QV&?G2;:.?]_"E)7+,S0^WB
M:39C6-E.=JA]^&H?DKEN]O6#262:ZJ291F]&O_;'&M'-]9W9UH^]7WT^A)]=
M-XV;R)K>1:O;T\9CUB:JY[GOFMJ']>1I;']+6;\DQ.'DLL?MNME=A0U1\F["
M<>7/ 2_GOCX9:[O6K.YKZ[_40]B5'/K$^>?>N/A\B7=ZG+;;KC'MU#P.X4CL
M9FOJUNV,\4,?GXI>G4_VX8;-Z5-<G+^4.1<8=M[;:79A8M9\/.YU),?3ZSD4
M,M9WYU_Q+3&4OOC]S'':K6G_,CM<[X_)[I=YN&1Y7'['O\[XK?X'^Y"0/C)(
M'SFD#P7I0T/Z*"!]E) ^*D@?(J4T0A%54$@5%%,%!55!45506!445P4%5D&1
M55)DE119)45629%54F25%%DE159)D5529)4463.*K!E%UHPB:T:1-:/(FE%D
MS2BR9A19,XJL&476G")K3I$UI\B:4V3-*;+F%%ESBJPY1=:<(FM.D5519%44
M615%5D6155%D5119%45619%54615%%DU159-D5539-44635%5DV155-DU119
M-45639&UH,A:4&0M*+(6%%D+BJP%1=:"(FM!D;6@R%I09"TILI8464N*K"5%
MUI(B:TF1M:3(6E)D+2FREA19*XJL%476BB)K19&UHLA:462M*+)6%%DKBJP5
M15:14F@5*<56D5)P%>G_U/7[-.W_<?SRC(>Z&U_SD^6?I3<_ 5!+ 0(4 Q0
M   ( %&"D58'04UB@0   +$    0              "  0    !D;V-0<F]P
M<R]A<' N>&UL4$L! A0#%     @ 48*15@ ><-OO    *P(  !$
M     ( !KP   &1O8U!R;W!S+V-O<F4N>&UL4$L! A0#%     @ 48*15IE<
MG",0!@  G"<  !,              ( !S0$  'AL+W1H96UE+W1H96UE,2YX
M;6Q02P$"% ,4    " !1@I%6.NV($T8'  ![,   &               @($.
M"   >&PO=V]R:W-H965T<R]S:&5E=#$N>&UL4$L! A0#%     @ 48*15F5]
M<(!]!P  F2$  !@              ("!B@\  'AL+W=O<FMS:&5E=',O<VAE
M970R+GAM;%!+ 0(4 Q0    ( %&"D59UPJ)#%0,  /4)   8
M  " @3T7  !X;"]W;W)K<VAE971S+W-H965T,RYX;6Q02P$"% ,4    " !1
M@I%6_[(3&B0&  "X&@  &               @(&(&@  >&PO=V]R:W-H965T
M<R]S:&5E=#0N>&UL4$L! A0#%     @ 48*15F\28%S9 P  1PT  !@
M         ("!XB   'AL+W=O<FMS:&5E=',O<VAE970U+GAM;%!+ 0(4 Q0
M   ( %&"D5;/JI1%L@<  *P[   8              " @?$D  !X;"]W;W)K
M<VAE971S+W-H965T-BYX;6Q02P$"% ,4    " !1@I%6;3/;#4D"  #I!
M&               @('9+   >&PO=V]R:W-H965T<R]S:&5E=#<N>&UL4$L!
M A0#%     @ 48*15E>&H.#'"0  U#   !@              ("!6"\  'AL
M+W=O<FMS:&5E=',O<VAE970X+GAM;%!+ 0(4 Q0    ( %&"D58G>K)=J!0
M 'LX   8              " @54Y  !X;"]W;W)K<VAE971S+W-H965T.2YX
M;6Q02P$"% ,4    " !1@I%65F>S"?4-  !()0  &0              @($S
M3@  >&PO=V]R:W-H965T<R]S:&5E=#$P+GAM;%!+ 0(4 Q0    ( %&"D59P
M!H!DG@<  #01   9              " @5]<  !X;"]W;W)K<VAE971S+W-H
M965T,3$N>&UL4$L! A0#%     @ 48*15L!?,7K(!   Z0H  !D
M     ("!-&0  'AL+W=O<FMS:&5E=',O<VAE970Q,BYX;6Q02P$"% ,4
M" !1@I%6%.%PSNX"   F!@  &0              @($S:0  >&PO=V]R:W-H
M965T<R]S:&5E=#$S+GAM;%!+ 0(4 Q0    ( %&"D5;?QW[!0P,  'T'   9
M              " @5AL  !X;"]W;W)K<VAE971S+W-H965T,30N>&UL4$L!
M A0#%     @ 48*15C%5GW78 @  !@8  !D              ("!TF\  'AL
M+W=O<FMS:&5E=',O<VAE970Q-2YX;6Q02P$"% ,4    " !1@I%6;CS'8T4,
M  !<(P  &0              @('A<@  >&PO=V]R:W-H965T<R]S:&5E=#$V
M+GAM;%!+ 0(4 Q0    ( %&"D58JT+N&W ,  $\(   9              "
M@5U_  !X;"]W;W)K<VAE971S+W-H965T,3<N>&UL4$L! A0#%     @ 48*1
M5O&83-7<!   ]PL  !D              ("!<(,  'AL+W=O<FMS:&5E=',O
M<VAE970Q."YX;6Q02P$"% ,4    " !1@I%6\(!<%J@&   1$   &0
M        @(&#B   >&PO=V]R:W-H965T<R]S:&5E=#$Y+GAM;%!+ 0(4 Q0
M   ( %&"D58$8A;:@@,   @(   9              " @6*/  !X;"]W;W)K
M<VAE971S+W-H965T,C N>&UL4$L! A0#%     @ 48*15L*1ZEVV!   K H
M !D              ("!&Y,  'AL+W=O<FMS:&5E=',O<VAE970R,2YX;6Q0
M2P$"% ,4    " !1@I%6<Q"+<-,#  !C"0  &0              @($(F
M>&PO=V]R:W-H965T<R]S:&5E=#(R+GAM;%!+ 0(4 Q0    ( %&"D58%)%K/
MRP(   X&   9              " @1*<  !X;"]W;W)K<VAE971S+W-H965T
M,C,N>&UL4$L! A0#%     @ 48*15LJ W';C"   L!<  !D
M ("!%)\  'AL+W=O<FMS:&5E=',O<VAE970R-"YX;6Q02P$"% ,4    " !1
M@I%6]V@,EI\+  #)'   &0              @($NJ   >&PO=V]R:W-H965T
M<R]S:&5E=#(U+GAM;%!+ 0(4 Q0    ( %&"D5:^^+PM3PD   85   9
M          " @02T  !X;"]W;W)K<VAE971S+W-H965T,C8N>&UL4$L! A0#
M%     @ 48*15B^G4-"' P  P@<  !D              ("!BKT  'AL+W=O
M<FMS:&5E=',O<VAE970R-RYX;6Q02P$"% ,4    " !1@I%69!S;HCD$   W
M"0  &0              @(%(P0  >&PO=V]R:W-H965T<R]S:&5E=#(X+GAM
M;%!+ 0(4 Q0    ( %&"D5:]5+!E*@,   \'   9              " @;C%
M  !X;"]W;W)K<VAE971S+W-H965T,CDN>&UL4$L! A0#%     @ 48*15D9P
MMSOD!   Z0H  !D              ("!&<D  'AL+W=O<FMS:&5E=',O<VAE
M970S,"YX;6Q02P$"% ,4    " !1@I%6/SK0.EH#   O"   &0
M    @($TS@  >&PO=V]R:W-H965T<R]S:&5E=#,Q+GAM;%!+ 0(4 Q0    (
M %&"D5;,'7_7)@,  .P&   9              " @<71  !X;"]W;W)K<VAE
M971S+W-H965T,S(N>&UL4$L! A0#%     @ 48*15MOIK7UZ%@  D$8  !D
M             ("!(M4  'AL+W=O<FMS:&5E=',O<VAE970S,RYX;6Q02P$"
M% ,4    " !1@I%6"RJSRV@$  !F"P  &0              @('3ZP  >&PO
M=V]R:W-H965T<R]S:&5E=#,T+GAM;%!+ 0(4 Q0    ( %&"D5;$E,\R2@,
M .T&   9              " @7+P  !X;"]W;W)K<VAE971S+W-H965T,S4N
M>&UL4$L! A0#%     @ 48*15M7"!C(2!   I@D  !D              ("!
M\_,  'AL+W=O<FMS:&5E=',O<VAE970S-BYX;6Q02P$"% ,4    " !1@I%6
M\#ZV;:L"  "<!0  &0              @($\^   >&PO=V]R:W-H965T<R]S
M:&5E=#,W+GAM;%!+ 0(4 Q0    ( %&"D58E\?5QZP(  'L&   9
M      " @1[[  !X;"]W;W)K<VAE971S+W-H965T,S@N>&UL4$L! A0#%
M  @ 48*15O_ZK&W8 @  Y@4  !D              ("!0/X  'AL+W=O<FMS
M:&5E=',O<VAE970S.2YX;6Q02P$"% ,4    " !1@I%6?<@J7*T#  #*"
M&0              @(%/ 0$ >&PO=V]R:W-H965T<R]S:&5E=#0P+GAM;%!+
M 0(4 Q0    ( %&"D59*T&.\\P(  ,,&   9              " @3,% 0!X
M;"]W;W)K<VAE971S+W-H965T-#$N>&UL4$L! A0#%     @ 48*15J;4IWSE
M P  80H  !D              ("!70@! 'AL+W=O<FMS:&5E=',O<VAE970T
M,BYX;6Q02P$"% ,4    " !1@I%6)G//MG #  "R"   &0
M@(%Y# $ >&PO=V]R:W-H965T<R]S:&5E=#0S+GAM;%!+ 0(4 Q0    ( %&"
MD5:36J^F3P4  )(.   9              " @2 0 0!X;"]W;W)K<VAE971S
M+W-H965T-#0N>&UL4$L! A0#%     @ 48*15DRTBSQ4"   4!0  !D
M         ("!IA4! 'AL+W=O<FMS:&5E=',O<VAE970T-2YX;6Q02P$"% ,4
M    " !1@I%6E1EZPS<&  !N#@  &0              @($Q'@$ >&PO=V]R
M:W-H965T<R]S:&5E=#0V+GAM;%!+ 0(4 Q0    ( %&"D58IYPJVT@(  "H&
M   9              " @9\D 0!X;"]W;W)K<VAE971S+W-H965T-#<N>&UL
M4$L! A0#%     @ 48*15O!T1GC7 @  V08  !D              ("!J"<!
M 'AL+W=O<FMS:&5E=',O<VAE970T."YX;6Q02P$"% ,4    " !1@I%6\CIM
M590*  ".:@  &0              @(&V*@$ >&PO=V]R:W-H965T<R]S:&5E
M=#0Y+GAM;%!+ 0(4 Q0    ( %&"D5:R \/6^0(  ,\'   9
M  " @8$U 0!X;"]W;W)K<VAE971S+W-H965T-3 N>&UL4$L! A0#%     @
M48*15@9B3M79 @  >PD  !D              ("!L3@! 'AL+W=O<FMS:&5E
M=',O<VAE970U,2YX;6Q02P$"% ,4    " !1@I%6658EVH0"  "7!0  &0
M            @('!.P$ >&PO=V]R:W-H965T<R]S:&5E=#4R+GAM;%!+ 0(4
M Q0    ( %&"D59:R\^>A (  )H%   9              " @7P^ 0!X;"]W
M;W)K<VAE971S+W-H965T-3,N>&UL4$L! A0#%     @ 48*15K?)?WN<!P
M+CT  !D              ("!-T$! 'AL+W=O<FMS:&5E=',O<VAE970U-"YX
M;6Q02P$"% ,4    " !1@I%6Y]O(DWP$  #=&@  &0              @($*
M20$ >&PO=V]R:W-H965T<R]S:&5E=#4U+GAM;%!+ 0(4 Q0    ( %&"D5:F
MB2$_DP,  ,T0   9              " @;U- 0!X;"]W;W)K<VAE971S+W-H
M965T-38N>&UL4$L! A0#%     @ 48*15H#F>';A!   [QX  !D
M     ("!AU$! 'AL+W=O<FMS:&5E=',O<VAE970U-RYX;6Q02P$"% ,4
M" !1@I%6\-Y-3#4&  "\)@  &0              @(&?5@$ >&PO=V]R:W-H
M965T<R]S:&5E=#4X+GAM;%!+ 0(4 Q0    ( %&"D58FI%M5?@0  $,=   9
M              " @0M= 0!X;"]W;W)K<VAE971S+W-H965T-3DN>&UL4$L!
M A0#%     @ 48*15B-[PQ5T @  (08  !D              ("!P&$! 'AL
M+W=O<FMS:&5E=',O<VAE970V,"YX;6Q02P$"% ,4    " !1@I%6;T+HHR\"
M   <!0  &0              @(%K9 $ >&PO=V]R:W-H965T<R]S:&5E=#8Q
M+GAM;%!+ 0(4 Q0    ( %&"D5:\BT.6T (  "L(   9              "
M@=%F 0!X;"]W;W)K<VAE971S+W-H965T-C(N>&UL4$L! A0#%     @ 48*1
M5EU>#Q[. @  3P@  !D              ("!V&D! 'AL+W=O<FMS:&5E=',O
M<VAE970V,RYX;6Q02P$"% ,4    " !1@I%62\")B\4"  #Y!P  &0
M        @('=; $ >&PO=V]R:W-H965T<R]S:&5E=#8T+GAM;%!+ 0(4 Q0
M   ( %&"D5;#6'#_ P0  #D2   9              " @=EO 0!X;"]W;W)K
M<VAE971S+W-H965T-C4N>&UL4$L! A0#%     @ 48*15N]C+*YC P  FPP
M !D              ("!$W0! 'AL+W=O<FMS:&5E=',O<VAE970V-BYX;6Q0
M2P$"% ,4    " !1@I%66WVXZ)P"  #)!@  &0              @(&M=P$
M>&PO=V]R:W-H965T<R]S:&5E=#8W+GAM;%!+ 0(4 Q0    ( %&"D5:HZ30^
MZ0D  "ES   9              " @8!Z 0!X;"]W;W)K<VAE971S+W-H965T
M-C@N>&UL4$L! A0#%     @ 48*15L+ 9K8_!   :!0  !D
M ("!H(0! 'AL+W=O<FMS:&5E=',O<VAE970V.2YX;6Q02P$"% ,4    " !1
M@I%6 1*9:' #  !;#0  &0              @($6B0$ >&PO=V]R:W-H965T
M<R]S:&5E=#<P+GAM;%!+ 0(4 Q0    ( %&"D5:>]7QA2 ,  )T(   9
M          " @;V, 0!X;"]W;W)K<VAE971S+W-H965T-S$N>&UL4$L! A0#
M%     @ 48*15F\(C#S !@  =C\  !D              ("!/) ! 'AL+W=O
M<FMS:&5E=',O<VAE970W,BYX;6Q02P$"% ,4    " !1@I%6R2!4$<8#  #8
M$   &0              @($SEP$ >&PO=V]R:W-H965T<R]S:&5E=#<S+GAM
M;%!+ 0(4 Q0    ( %&"D5:M.U(* @(  $H$   9              " @3";
M 0!X;"]W;W)K<VAE971S+W-H965T-S0N>&UL4$L! A0#%     @ 48*15G82
M=0Z* @  =P8  !D              ("!:9T! 'AL+W=O<FMS:&5E=',O<VAE
M970W-2YX;6Q02P$"% ,4    " !1@I%6\77'36("  "[!0  &0
M    @($JH $ >&PO=V]R:W-H965T<R]S:&5E=#<V+GAM;%!+ 0(4 Q0    (
M %&"D58I@J/\HP(  *@'   9              " @<.B 0!X;"]W;W)K<VAE
M971S+W-H965T-S<N>&UL4$L! A0#%     @ 48*15F0;R.R% @   08  !D
M             ("!G:4! 'AL+W=O<FMS:&5E=',O<VAE970W."YX;6Q02P$"
M% ,4    " !1@I%6N_>$9*$%  !#'P  &0              @(%9J $ >&PO
M=V]R:W-H965T<R]S:&5E=#<Y+GAM;%!+ 0(4 Q0    ( %&"D58Q?D#JE0(
M (4&   9              " @3&N 0!X;"]W;W)K<VAE971S+W-H965T.# N
M>&UL4$L! A0#%     @ 48*15AVT$$1<"   X$T  !D              ("!
M_; ! 'AL+W=O<FMS:&5E=',O<VAE970X,2YX;6Q02P$"% ,4    " !1@I%6
M)Z2%6O("   )"0  &0              @(&0N0$ >&PO=V]R:W-H965T<R]S
M:&5E=#@R+GAM;%!+ 0(4 Q0    ( %&"D5;]\!@\" 0  '$0   9
M      " @;F\ 0!X;"]W;W)K<VAE971S+W-H965T.#,N>&UL4$L! A0#%
M  @ 48*15AI#P=]U!@  P3H  !D              ("!^, ! 'AL+W=O<FMS
M:&5E=',O<VAE970X-"YX;6Q02P$"% ,4    " !1@I%6!4?=L38$   3$
M&0              @(&DQP$ >&PO=V]R:W-H965T<R]S:&5E=#@U+GAM;%!+
M 0(4 Q0    ( %&"D58V__@QQ (  "4(   9              " @1', 0!X
M;"]W;W)K<VAE971S+W-H965T.#8N>&UL4$L! A0#%     @ 48*15D9+VWF.
M P  K0T  !D              ("!#,\! 'AL+W=O<FMS:&5E=',O<VAE970X
M-RYX;6Q02P$"% ,4    " !1@I%6KG1EJ1L%   3$P  &0
M@('1T@$ >&PO=V]R:W-H965T<R]S:&5E=#@X+GAM;%!+ 0(4 Q0    ( %&"
MD58L*"MHO 8  #@:   9              " @2/8 0!X;"]W;W)K<VAE971S
M+W-H965T.#DN>&UL4$L! A0#%     @ 48*15AAY^GB  @  .@4  !D
M         ("!%M\! 'AL+W=O<FMS:&5E=',O<VAE970Y,"YX;6Q02P$"% ,4
M    " !1@I%6/UM9KUT#   O"@  &0              @('-X0$ >&PO=V]R
M:W-H965T<R]S:&5E=#DQ+GAM;%!+ 0(4 Q0    ( %&"D5:XTTS=!P8  +<F
M   9              " @6'E 0!X;"]W;W)K<VAE971S+W-H965T.3(N>&UL
M4$L! A0#%     @ 48*15OA"N\R@ P  *1   !D              ("!G^L!
M 'AL+W=O<FMS:&5E=',O<VAE970Y,RYX;6Q02P$"% ,4    " !1@I%6G]FU
M@8\%  #,'0  &0              @(%V[P$ >&PO=V]R:W-H965T<R]S:&5E
M=#DT+GAM;%!+ 0(4 Q0    ( %&"D58A2C3C:P0  )P6   9
M  " @3SU 0!X;"]W;W)K<VAE971S+W-H965T.34N>&UL4$L! A0#%     @
M48*15ODG[=HV!0  52   !D              ("!WOD! 'AL+W=O<FMS:&5E
M=',O<VAE970Y-BYX;6Q02P$"% ,4    " !1@I%6Y+!3\XD"  "V!@  &0
M            @(%+_P$ >&PO=V]R:W-H965T<R]S:&5E=#DW+GAM;%!+ 0(4
M Q0    ( %&"D5:7X3!=! ,  "H)   9              " @0L" @!X;"]W
M;W)K<VAE971S+W-H965T.3@N>&UL4$L! A0#%     @ 48*15EU9P$54 @
MX@0  !D              ("!1@4" 'AL+W=O<FMS:&5E=',O<VAE970Y.2YX
M;6Q02P$"% ,4    " !1@I%62W(_UN8"  !="P  &@              @('1
M!P( >&PO=V]R:W-H965T<R]S:&5E=#$P,"YX;6Q02P$"% ,4    " !1@I%6
M&Z?#)%L"  #^!   &@              @('O"@( >&PO=V]R:W-H965T<R]S
M:&5E=#$P,2YX;6Q02P$"% ,4    " !1@I%6I:>VF"8#  !Z#   &@
M        @(&"#0( >&PO=V]R:W-H965T<R]S:&5E=#$P,BYX;6Q02P$"% ,4
M    " !1@I%6T6#[^30#  !E"0  &@              @('@$ ( >&PO=V]R
M:W-H965T<R]S:&5E=#$P,RYX;6Q02P$"% ,4    " !1@I%6P?3=(4L#  "L
M%   #0              @ %,% ( >&PO<W1Y;&5S+GAM;%!+ 0(4 Q0    (
M %&"D5:7BKL<P    !,"   +              "  <(7 @!?<F5L<R\N<F5L
M<U!+ 0(4 Q0    ( %&"D5;%DJ"+00<  *-#   /              "  :L8
M @!X;"]W;W)K8F]O:RYX;6Q02P$"% ,4    " !1@I%6"DA2;NL"  "&/
M&@              @ $9( ( >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-0
M2P$"% ,4    " !1@I%6A'6;AV,"  !A.@  $P              @ $\(P(
I6T-O;G1E;G1?5'EP97-=+GAM;%!+!08     ;P!O (0>  #0)0(    !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>118
<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>119
<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>120
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.23.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>285</ContextCount>
  <ElementCount>494</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>108</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>7</UnitCount>
  <MyReports>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>1001 - Document - Cover Page</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/CoverPage</Role>
      <ShortName>Cover Page</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>1002 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ConsolidatedBalanceSheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>1003 - Statement - Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>1004 - Statement - Consolidated Statements of Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ConsolidatedStatementsOfIncome</Role>
      <ShortName>Consolidated Statements of Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>1005 - Statement - Consolidated Statements of Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome</Role>
      <ShortName>Consolidated Statements of Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>1006 - Statement - Consolidated Statements of Changes in Shareholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity</Role>
      <ShortName>Consolidated Statements of Changes in Shareholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>1007 - Statement - Consolidated Statements of Changes in Shareholders' Equity (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquityParenthetical</Role>
      <ShortName>Consolidated Statements of Changes in Shareholders' Equity (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>1008 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ConsolidatedStatementsOfCashFlows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>1009 - Disclosure - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/SummaryOfSignificantAccountingPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>1010 - Disclosure - Acquisitions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/Acquisitions</Role>
      <ShortName>Acquisitions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>1011 - Disclosure - Revenue Recognition</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/RevenueRecognition</Role>
      <ShortName>Revenue Recognition</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>1012 - Disclosure - Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IntangibleAssets</Role>
      <ShortName>Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>1013 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/Inventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>1014 - Disclosure - Property, Plant and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/PropertyPlantAndEquipment</Role>
      <ShortName>Property, Plant and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>1015 - Disclosure - Accrued Expenses</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/AccruedExpenses</Role>
      <ShortName>Accrued Expenses</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>1016 - Disclosure - Credit Agreement and Long-Term Debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/CreditAgreementAndLongTermDebt</Role>
      <ShortName>Credit Agreement and Long-Term Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>1017 - Disclosure - Paycheck Protection Program Loan</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/PaycheckProtectionProgramLoan</Role>
      <ShortName>Paycheck Protection Program Loan</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>1018 - Disclosure - Derivative Financial Instruments and Risk Management</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagement</Role>
      <ShortName>Derivative Financial Instruments and Risk Management</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>1019 - Disclosure - Employee Retention Credit</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/EmployeeRetentionCredit</Role>
      <ShortName>Employee Retention Credit</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>1020 - Disclosure - Royalty Obligation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/RoyaltyObligation</Role>
      <ShortName>Royalty Obligation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>1021 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/Leases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>1022 - Disclosure - Accumulated Other Comprehensive Loss</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/AccumulatedOtherComprehensiveLoss</Role>
      <ShortName>Accumulated Other Comprehensive Loss</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>1023 - Disclosure - Shareholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ShareholdersEquity</Role>
      <ShortName>Shareholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>1024 - Disclosure - Share-Based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ShareBasedCompensation</Role>
      <ShortName>Share-Based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>1025 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>1026 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformation</Role>
      <ShortName>Nature of Operations, Segment Reporting and Geographical Information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>1027 - Disclosure - Employee Benefit Plans</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/EmployeeBenefitPlans</Role>
      <ShortName>Employee Benefit Plans</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>1028 - Disclosure - Product Warranty Liability</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ProductWarrantyLiability</Role>
      <ShortName>Product Warranty Liability</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>1029 - Disclosure - Concentration of Risk</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ConcentrationOfRisk</Role>
      <ShortName>Concentration of Risk</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>1030 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/CommitmentsAndContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>1031 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/FairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>1032 - Disclosure - Schedule II - Valuation and Qualifying Accounts and Reserves</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReserves</Role>
      <ShortName>Schedule II - Valuation and Qualifying Accounts and Reserves</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>32</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>1033 - Disclosure - Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://astro-med.com/role/SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>1034 - Disclosure - Acquisitions (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/AcquisitionsTables</Role>
      <ShortName>Acquisitions (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/Acquisitions</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>1035 - Disclosure - Revenue Recognition (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/RevenueRecognitionTables</Role>
      <ShortName>Revenue Recognition (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/RevenueRecognition</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>1036 - Disclosure - Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IntangibleAssetsTables</Role>
      <ShortName>Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/IntangibleAssets</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>1037 - Disclosure - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/InventoriesTables</Role>
      <ShortName>Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/Inventories</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>1038 - Disclosure - Property, Plant and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/PropertyPlantAndEquipmentTables</Role>
      <ShortName>Property, Plant and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/PropertyPlantAndEquipment</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>1039 - Disclosure - Accrued Expenses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/AccruedExpensesTables</Role>
      <ShortName>Accrued Expenses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/AccruedExpenses</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>1040 - Disclosure - Credit Agreement and Long-Term Debt (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/CreditAgreementAndLongTermDebtTables</Role>
      <ShortName>Credit Agreement and Long-Term Debt (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/CreditAgreementAndLongTermDebt</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>1041 - Disclosure - Derivative Financial Instruments and Risk Management (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementTables</Role>
      <ShortName>Derivative Financial Instruments and Risk Management (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagement</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>1042 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/Leases</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>1043 - Disclosure - Accumulated Other Comprehensive Loss (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/AccumulatedOtherComprehensiveLossTables</Role>
      <ShortName>Accumulated Other Comprehensive Loss (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/AccumulatedOtherComprehensiveLoss</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>1044 - Disclosure - Share-Based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ShareBasedCompensationTables</Role>
      <ShortName>Share-Based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/ShareBasedCompensation</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>1045 - Disclosure - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IncomeTaxesTables</Role>
      <ShortName>Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/IncomeTaxes</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>1046 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationTables</Role>
      <ShortName>Nature of Operations, Segment Reporting and Geographical Information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformation</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>1047 - Disclosure - Product Warranty Liability (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ProductWarrantyLiabilityTables</Role>
      <ShortName>Product Warranty Liability (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/ProductWarrantyLiability</ParentRole>
      <Position>47</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>1048 - Disclosure - Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/FairValueMeasurementsTables</Role>
      <ShortName>Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://astro-med.com/role/FairValueMeasurements</ParentRole>
      <Position>48</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>1049 - Disclosure - Summary of Significant Accounting Policies - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail</Role>
      <ShortName>Summary of Significant Accounting Policies - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>1050 - Disclosure - Acquisitions - Summary of Purchase Price of Acquisition Allocated on Basis of Fair Value (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail</Role>
      <ShortName>Acquisitions - Summary of Purchase Price of Acquisition Allocated on Basis of Fair Value (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>1051 - Disclosure - Acquisitions - Summary of Fair Value of the Acquired Identifiable Intangible Assets and Related Estimated Useful Lives (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail</Role>
      <ShortName>Acquisitions - Summary of Fair Value of the Acquired Identifiable Intangible Assets and Related Estimated Useful Lives (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>1052 - Disclosure - Acquisitions - Summary of Revenue and Earnings Before Taxes (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail</Role>
      <ShortName>Acquisitions - Summary of Revenue and Earnings Before Taxes (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>1053 - Disclosure - Acquisitions - Summary of Acquired Identifiable Intangible Asset (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail</Role>
      <ShortName>Acquisitions - Summary of Acquired Identifiable Intangible Asset (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>1054 - Disclosure - Acquisitions - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/AcquisitionsAdditionalInformationDetail</Role>
      <ShortName>Acquisitions - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>1055 - Disclosure - Revenue Recognition - Summary of Revenues Disaggregated by Primary Geographic Markets (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail</Role>
      <ShortName>Revenue Recognition - Summary of Revenues Disaggregated by Primary Geographic Markets (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>1056 - Disclosure - Revenue Recognition - Summary of Revenues Disaggregated by Primary Product Type (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail</Role>
      <ShortName>Revenue Recognition - Summary of Revenues Disaggregated by Primary Product Type (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>1057 - Disclosure - Revenue Recognition - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail</Role>
      <ShortName>Revenue Recognition - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>1058 - Disclosure - Intangible Assets - Fair Value of Acquired Identifiable Intangible Assets and Related Estimated Useful Lives (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail</Role>
      <ShortName>Intangible Assets - Fair Value of Acquired Identifiable Intangible Assets and Related Estimated Useful Lives (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>1059 - Disclosure - Intangible Assets - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail</Role>
      <ShortName>Intangible Assets - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>1060 - Disclosure - Intangible Assets - Summary of Estimated Amortization Expense (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail</Role>
      <ShortName>Intangible Assets - Summary of Estimated Amortization Expense (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>1061 - Disclosure - Inventories - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/InventoriesAdditionalInformationDetail</Role>
      <ShortName>Inventories - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>1062 - Disclosure - Inventories - Components of Inventories (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail</Role>
      <ShortName>Inventories - Components of Inventories (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>1063 - Disclosure - Property, Plant and Equipment - Summary of Property, Plant and Equipment (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail</Role>
      <ShortName>Property, Plant and Equipment - Summary of Property, Plant and Equipment (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>1064 - Disclosure - Property, Plant and Equipment - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail</Role>
      <ShortName>Property, Plant and Equipment - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>1065 - Disclosure - Accrued Expenses - Summary of Accrued Expenses (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail</Role>
      <ShortName>Accrued Expenses - Summary of Accrued Expenses (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>1066 - Disclosure - Credit Agreement and Long- Term Debt - Schedule of Long Term Debt in the Accompanying Condensed Consolidated Balance Sheets (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail</Role>
      <ShortName>Credit Agreement and Long- Term Debt - Schedule of Long Term Debt in the Accompanying Condensed Consolidated Balance Sheets (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>66</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>1067 - Disclosure - Credit Agreement and Long- Term Debt- Schedule of Required Principal Payments Remaining on Long Term Debt Outstanding (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail</Role>
      <ShortName>Credit Agreement and Long- Term Debt- Schedule of Required Principal Payments Remaining on Long Term Debt Outstanding (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>1068 - Disclosure - Credit Agreement and Long- Term Debt - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail</Role>
      <ShortName>Credit Agreement and Long- Term Debt - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>68</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>1069 - Disclosure - Paycheck Protection Program Loan - Additional information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail</Role>
      <ShortName>Paycheck Protection Program Loan - Additional information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>1070 - Disclosure - Derivative Financial Instruments and Risk Management - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail</Role>
      <ShortName>Derivative Financial Instruments and Risk Management - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>1071 - Disclosure - Derivative Financial Instruments and Risk Management - Schedule of Impact of the Derivative Instruments in the Condensed Consolidated Financial Statements (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail</Role>
      <ShortName>Derivative Financial Instruments and Risk Management - Schedule of Impact of the Derivative Instruments in the Condensed Consolidated Financial Statements (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>1072 - Disclosure - Employee Retention Credit - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail</Role>
      <ShortName>Employee Retention Credit - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>1073 - Disclosure - Royalty Obligation - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail</Role>
      <ShortName>Royalty Obligation - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>73</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>1074 - Disclosure - Leases - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/LeasesAdditionalInformationDetail</Role>
      <ShortName>Leases - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>74</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>1075 - Disclosure - Leases - Schedule Of Balance Sheet And Other Information Related To Operating Leases (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail</Role>
      <ShortName>Leases - Schedule Of Balance Sheet And Other Information Related To Operating Leases (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>75</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>1076 - Disclosure - Leases - Lease Cost Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/LeasesLeaseCostInformationDetail</Role>
      <ShortName>Leases - Lease Cost Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>76</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>1077 - Disclosure - Leases - Maturities of lease liabilities (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail</Role>
      <ShortName>Leases - Maturities of lease liabilities (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>77</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>1078 - Disclosure - Leases - Supplemental cash flow information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/LeasesSupplementalCashFlowInformationDetail</Role>
      <ShortName>Leases - Supplemental cash flow information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>78</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>1079 - Disclosure - Accumulated Other Comprehensive Loss - Changes in Balance of Accumulated Other Comprehensive Loss (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail</Role>
      <ShortName>Accumulated Other Comprehensive Loss - Changes in Balance of Accumulated Other Comprehensive Loss (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>79</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>1080 - Disclosure - Shareholders' Equity - Additional information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail</Role>
      <ShortName>Shareholders' Equity - Additional information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>80</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>1081 - Disclosure - Share-Based Compensation - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail</Role>
      <ShortName>Share-Based Compensation - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>81</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>1082 - Disclosure - Share-Based Compensation - Share-Based Compensation Expense (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail</Role>
      <ShortName>Share-Based Compensation - Share-Based Compensation Expense (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>82</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>1083 - Disclosure - Share-Based Compensation - Aggregated Information Regarding Stock Options Granted (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail</Role>
      <ShortName>Share-Based Compensation - Aggregated Information Regarding Stock Options Granted (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>83</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>1084 - Disclosure - Share-Based Compensation - Summary of Options Outstanding (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail</Role>
      <ShortName>Share-Based Compensation - Summary of Options Outstanding (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>84</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>1085 - Disclosure - Share-Based Compensation - Aggregated Information Regarding RSUs and RSAs Granted (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail</Role>
      <ShortName>Share-Based Compensation - Aggregated Information Regarding RSUs and RSAs Granted (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>85</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>1086 - Disclosure - Income Taxes - Components of Income before Income Taxes (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail</Role>
      <ShortName>Income Taxes - Components of Income before Income Taxes (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>86</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>1087 - Disclosure - Income Taxes - Components of Provision for Income Taxes (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail</Role>
      <ShortName>Income Taxes - Components of Provision for Income Taxes (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>87</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>1088 - Disclosure - Income Taxes - Reconciliation of income tax provision/(benefit) With The Amount Computed By Applying The Statutory Federal Income Tax Rate To The Income Before Income Tax Provision/(benefit) (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail</Role>
      <ShortName>Income Taxes - Reconciliation of income tax provision/(benefit) With The Amount Computed By Applying The Statutory Federal Income Tax Rate To The Income Before Income Tax Provision/(benefit) (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>88</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R89.htm</HtmlFileName>
      <LongName>1089 - Disclosure - Income Taxes - Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail</Role>
      <ShortName>Income Taxes - Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>89</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R90.htm</HtmlFileName>
      <LongName>1090 - Disclosure - Income Taxes - Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities (Parenthetical) (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesParentheticalDetail</Role>
      <ShortName>Income Taxes - Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities (Parenthetical) (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>90</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R91.htm</HtmlFileName>
      <LongName>1091 - Disclosure - Income Taxes - Change in Balance of Unrecognized Tax Benefits, Excluding Interest and Penalties (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail</Role>
      <ShortName>Income Taxes - Change in Balance of Unrecognized Tax Benefits, Excluding Interest and Penalties (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>91</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R92.htm</HtmlFileName>
      <LongName>1092 - Disclosure - Income Taxes - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail</Role>
      <ShortName>Income Taxes - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>92</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R93.htm</HtmlFileName>
      <LongName>1093 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail</Role>
      <ShortName>Nature of Operations, Segment Reporting and Geographical Information - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>93</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R94.htm</HtmlFileName>
      <LongName>1094 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information - Net Sales and Segment Operating Profit (loss)  for Each Reporting Segment (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail</Role>
      <ShortName>Nature of Operations, Segment Reporting and Geographical Information - Net Sales and Segment Operating Profit (loss)  for Each Reporting Segment (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>94</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R95.htm</HtmlFileName>
      <LongName>1095 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information - Summary of Other Information by Segment (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail</Role>
      <ShortName>Nature of Operations, Segment Reporting and Geographical Information - Summary of Other Information by Segment (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>95</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R96.htm</HtmlFileName>
      <LongName>1096 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information - Summary of Selected Financial Information by Geographic Area (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail</Role>
      <ShortName>Nature of Operations, Segment Reporting and Geographical Information - Summary of Selected Financial Information by Geographic Area (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>96</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R97.htm</HtmlFileName>
      <LongName>1097 - Disclosure - Employee Benefit Plans - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/EmployeeBenefitPlansAdditionalInformationDetail</Role>
      <ShortName>Employee Benefit Plans - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>97</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R98.htm</HtmlFileName>
      <LongName>1098 - Disclosure - Product Warranty Liability - Activity in Product Warranty Liability (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ProductWarrantyLiabilityActivityInProductWarrantyLiabilityDetail</Role>
      <ShortName>Product Warranty Liability - Activity in Product Warranty Liability (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>98</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R99.htm</HtmlFileName>
      <LongName>1099 - Disclosure - Product Warranty Liability - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ProductWarrantyLiabilityAdditionalInformationDetail</Role>
      <ShortName>Product Warranty Liability - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>99</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R100.htm</HtmlFileName>
      <LongName>1100 - Disclosure - Concentration of Risk - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail</Role>
      <ShortName>Concentration of Risk - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>100</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R101.htm</HtmlFileName>
      <LongName>1101 - Disclosure - Commitments and Contingencies - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/CommitmentsAndContingenciesAdditionalInformationDetail</Role>
      <ShortName>Commitments and Contingencies - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>101</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R102.htm</HtmlFileName>
      <LongName>1102 - Disclosure - Fair Value Measurements - Schedule of Company's Long-Term Debt Including the Current Portion Not Reflected in Financial Statements at Fair Value (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail</Role>
      <ShortName>Fair Value Measurements - Schedule of Company's Long-Term Debt Including the Current Portion Not Reflected in Financial Statements at Fair Value (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>102</Position>
    </Report>
    <Report instance="d415415d10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R103.htm</HtmlFileName>
      <LongName>1103 - Disclosure - Schedule II - Valuation and Qualifying Accounts and Reserves (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail</Role>
      <ShortName>Schedule II - Valuation and Qualifying Accounts and Reserves (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReserves</ParentRole>
      <Position>103</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <Logs>
    <Log type="Warning">[dq-0542-Deprecated-Concept] Concept TreasuryStockShares in us-gaap/2022 used in 2 facts was deprecated in us-gaap/2023 as of 2023 and should not be used. d415415d10k.htm 3474</Log>
    <Log type="Warning">[dq-0542-Deprecated-Concept] Concept TreasuryStockMember in us-gaap/2022 used in 8 facts was deprecated in us-gaap/2023 as of 2023 and should not be used. d415415d10k.htm 4315, 4375, 4405, 4555, 4645, 4765, 4855, 4975</Log>
    <Log type="Warning">[dq-0542-Deprecated-Concept] Concept LondonInterbankOfferedRateLIBORMember in us-gaap/2022 used in 3 facts was deprecated in us-gaap/2023 as of 2023 and should not be used. d415415d10k.htm 7304</Log>
  </Logs>
  <InputFiles>
    <File doctype="10-K" original="d415415d10k.htm">d415415d10k.htm</File>
    <File>alot-20230131.xsd</File>
    <File>alot-20230131_cal.xml</File>
    <File>alot-20230131_def.xml</File>
    <File>alot-20230131_lab.xml</File>
    <File>alot-20230131_pre.xml</File>
    <File>d415415dex21.htm</File>
    <File>d415415dex231.htm</File>
    <File>d415415dex311.htm</File>
    <File>d415415dex312.htm</File>
    <File>d415415dex321.htm</File>
    <File>d415415dex322.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="1">http://fasb.org/srt/2022</BaseTaxonomy>
    <BaseTaxonomy items="1107">http://fasb.org/us-gaap/2022</BaseTaxonomy>
    <BaseTaxonomy items="36">http://xbrl.sec.gov/dei/2022</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>123
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "d415415d10k.htm": {
   "axisCustom": 5,
   "axisStandard": 32,
   "baseTaxonomies": {
    "http://fasb.org/srt/2022": 1,
    "http://fasb.org/us-gaap/2022": 1107,
    "http://xbrl.sec.gov/dei/2022": 36
   },
   "contextCount": 285,
   "dts": {
    "calculationLink": {
     "local": [
      "alot-20230131_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "alot-20230131_def.xml"
     ]
    },
    "inline": {
     "local": [
      "d415415d10k.htm"
     ]
    },
    "labelLink": {
     "local": [
      "alot-20230131_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "alot-20230131_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "alot-20230131.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/arcrole/factExplanatory-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "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/2022/elts/srt-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-roles-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd",
      "https://xbrl.fasb.org/srt/2022q3/srt-sup-2022q3.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022q3/us-gaap-sup-2022q3.xsd",
      "https://xbrl.sec.gov/country/2022/country-2022.xsd",
      "https://xbrl.sec.gov/currency/2022/currency-2022.xsd",
      "https://xbrl.sec.gov/dei/2022/dei-2022.xsd",
      "https://xbrl.sec.gov/exch/2022/exch-2022.xsd",
      "https://xbrl.sec.gov/naics/2022/naics-2022.xsd",
      "https://xbrl.sec.gov/sic/2022/sic-2022.xsd",
      "https://xbrl.sec.gov/stpr/2022/stpr-2022.xsd"
     ]
    }
   },
   "elementCount": 790,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2022": 2,
    "http://xbrl.sec.gov/dei/2022": 3,
    "total": 5
   },
   "keyCustom": 78,
   "keyStandard": 416,
   "memberCustom": 54,
   "memberStandard": 53,
   "nsprefix": "alot",
   "nsuri": "http://astro-med.com/20230131",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "1001 - Document - Cover Page",
     "menuCat": "Cover",
     "order": "1",
     "role": "http://astro-med.com/role/CoverPage",
     "shortName": "Cover Page",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1010 - Disclosure - Acquisitions",
     "menuCat": "Notes",
     "order": "10",
     "role": "http://astro-med.com/role/Acquisitions",
     "shortName": "Acquisitions",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R100": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis",
      "decimals": "3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1100 - Disclosure - Concentration of Risk - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "100",
     "role": "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail",
     "shortName": "Concentration of Risk - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023_CostOfGoodsTotalMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerMembersrtMajorCustomersAxis_SupplierConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis",
      "decimals": "3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     }
    },
    "R101": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:PurchaseObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1101 - Disclosure - Commitments and Contingencies - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "101",
     "role": "http://astro-med.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
     "shortName": "Commitments and Contingencies - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:PurchaseObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R102": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtLongtermAndShorttermCombinedAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1102 - Disclosure - Fair Value Measurements - Schedule of Company's Long-Term Debt Including the Current Portion Not Reflected in Financial Statements at Fair Value (Detail)",
     "menuCat": "Details",
     "order": "102",
     "role": "http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail",
     "shortName": "Fair Value Measurements - Schedule of Company's Long-Term Debt Including the Current Portion Not Reflected in Financial Statements at Fair Value (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023_EstimateOfFairValueFairValueDisclosureMemberusgaapFairValueByMeasurementBasisAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtLongtermAndShorttermCombinedAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R103": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2022_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ValuationAllowancesAndReservesBalance",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1103 - Disclosure - Schedule II - Valuation and Qualifying Accounts and Reserves (Detail)",
     "menuCat": "Details",
     "order": "103",
     "role": "http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail",
     "shortName": "Schedule II - Valuation and Qualifying Accounts and Reserves (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2020_AllowanceForCreditLossMemberusgaapValuationAllowancesAndReservesTypeAxis",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:ValuationAllowancesAndReservesBalance",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1011 - Disclosure - Revenue Recognition",
     "menuCat": "Notes",
     "order": "11",
     "role": "http://astro-med.com/role/RevenueRecognition",
     "shortName": "Revenue Recognition",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1012 - Disclosure - Intangible Assets",
     "menuCat": "Notes",
     "order": "12",
     "role": "http://astro-med.com/role/IntangibleAssets",
     "shortName": "Intangible Assets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1013 - Disclosure - Inventories",
     "menuCat": "Notes",
     "order": "13",
     "role": "http://astro-med.com/role/Inventories",
     "shortName": "Inventories",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1014 - Disclosure - Property, Plant and Equipment",
     "menuCat": "Notes",
     "order": "14",
     "role": "http://astro-med.com/role/PropertyPlantAndEquipment",
     "shortName": "Property, Plant and Equipment",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1015 - Disclosure - Accrued Expenses",
     "menuCat": "Notes",
     "order": "15",
     "role": "http://astro-med.com/role/AccruedExpenses",
     "shortName": "Accrued Expenses",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1016 - Disclosure - Credit Agreement and Long-Term Debt",
     "menuCat": "Notes",
     "order": "16",
     "role": "http://astro-med.com/role/CreditAgreementAndLongTermDebt",
     "shortName": "Credit Agreement and Long-Term Debt",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alot:DisclosureForPaycheckProtectionProgramLoanTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1017 - Disclosure - Paycheck Protection Program Loan",
     "menuCat": "Notes",
     "order": "17",
     "role": "http://astro-med.com/role/PaycheckProtectionProgramLoan",
     "shortName": "Paycheck Protection Program Loan",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alot:DisclosureForPaycheckProtectionProgramLoanTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1018 - Disclosure - Derivative Financial Instruments and Risk Management",
     "menuCat": "Notes",
     "order": "18",
     "role": "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagement",
     "shortName": "Derivative Financial Instruments and Risk Management",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alot:DisclosureForEmployeeRetentionCreditTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1019 - Disclosure - Employee Retention Credit",
     "menuCat": "Notes",
     "order": "19",
     "role": "http://astro-med.com/role/EmployeeRetentionCredit",
     "shortName": "Employee Retention Credit",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alot:DisclosureForEmployeeRetentionCreditTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1002 - Statement - Consolidated Balance Sheets",
     "menuCat": "Statements",
     "order": "2",
     "role": "http://astro-med.com/role/ConsolidatedBalanceSheets",
     "shortName": "Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alot:DisclosureForTheHoneywellRoyaltyObligationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1020 - Disclosure - Royalty Obligation",
     "menuCat": "Notes",
     "order": "20",
     "role": "http://astro-med.com/role/RoyaltyObligation",
     "shortName": "Royalty Obligation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alot:DisclosureForTheHoneywellRoyaltyObligationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1021 - Disclosure - Leases",
     "menuCat": "Notes",
     "order": "21",
     "role": "http://astro-med.com/role/Leases",
     "shortName": "Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1022 - Disclosure - Accumulated Other Comprehensive Loss",
     "menuCat": "Notes",
     "order": "22",
     "role": "http://astro-med.com/role/AccumulatedOtherComprehensiveLoss",
     "shortName": "Accumulated Other Comprehensive Loss",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1023 - Disclosure - Shareholders' Equity",
     "menuCat": "Notes",
     "order": "23",
     "role": "http://astro-med.com/role/ShareholdersEquity",
     "shortName": "Shareholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1024 - Disclosure - Share-Based Compensation",
     "menuCat": "Notes",
     "order": "24",
     "role": "http://astro-med.com/role/ShareBasedCompensation",
     "shortName": "Share-Based Compensation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1025 - Disclosure - Income Taxes",
     "menuCat": "Notes",
     "order": "25",
     "role": "http://astro-med.com/role/IncomeTaxes",
     "shortName": "Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1026 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information",
     "menuCat": "Notes",
     "order": "26",
     "role": "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformation",
     "shortName": "Nature of Operations, Segment Reporting and Geographical Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1027 - Disclosure - Employee Benefit Plans",
     "menuCat": "Notes",
     "order": "27",
     "role": "http://astro-med.com/role/EmployeeBenefitPlans",
     "shortName": "Employee Benefit Plans",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1028 - Disclosure - Product Warranty Liability",
     "menuCat": "Notes",
     "order": "28",
     "role": "http://astro-med.com/role/ProductWarrantyLiability",
     "shortName": "Product Warranty Liability",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1029 - Disclosure - Concentration of Risk",
     "menuCat": "Notes",
     "order": "29",
     "role": "http://astro-med.com/role/ConcentrationOfRisk",
     "shortName": "Concentration of Risk",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1003 - Statement - Consolidated Balance Sheets (Parenthetical)",
     "menuCat": "Statements",
     "order": "3",
     "role": "http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical",
     "shortName": "Consolidated Balance Sheets (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1030 - Disclosure - Commitments and Contingencies",
     "menuCat": "Notes",
     "order": "30",
     "role": "http://astro-med.com/role/CommitmentsAndContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1031 - Disclosure - Fair Value Measurements",
     "menuCat": "Notes",
     "order": "31",
     "role": "http://astro-med.com/role/FairValueMeasurements",
     "shortName": "Fair Value Measurements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1032 - Disclosure - Schedule II - Valuation and Qualifying Accounts and Reserves",
     "menuCat": "Notes",
     "order": "32",
     "role": "http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReserves",
     "shortName": "Schedule II - Valuation and Qualifying Accounts and Reserves",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1033 - Disclosure - Summary of Significant Accounting Policies (Policies)",
     "menuCat": "Policies",
     "order": "33",
     "role": "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies",
     "shortName": "Summary of Significant Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1034 - Disclosure - Acquisitions (Tables)",
     "menuCat": "Tables",
     "order": "34",
     "role": "http://astro-med.com/role/AcquisitionsTables",
     "shortName": "Acquisitions (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1035 - Disclosure - Revenue Recognition (Tables)",
     "menuCat": "Tables",
     "order": "35",
     "role": "http://astro-med.com/role/RevenueRecognitionTables",
     "shortName": "Revenue Recognition (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1036 - Disclosure - Intangible Assets (Tables)",
     "menuCat": "Tables",
     "order": "36",
     "role": "http://astro-med.com/role/IntangibleAssetsTables",
     "shortName": "Intangible Assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1037 - Disclosure - Inventories (Tables)",
     "menuCat": "Tables",
     "order": "37",
     "role": "http://astro-med.com/role/InventoriesTables",
     "shortName": "Inventories (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1038 - Disclosure - Property, Plant and Equipment (Tables)",
     "menuCat": "Tables",
     "order": "38",
     "role": "http://astro-med.com/role/PropertyPlantAndEquipmentTables",
     "shortName": "Property, Plant and Equipment (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1039 - Disclosure - Accrued Expenses (Tables)",
     "menuCat": "Tables",
     "order": "39",
     "role": "http://astro-med.com/role/AccruedExpensesTables",
     "shortName": "Accrued Expenses (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1004 - Statement - Consolidated Statements of Income",
     "menuCat": "Statements",
     "order": "4",
     "role": "http://astro-med.com/role/ConsolidatedStatementsOfIncome",
     "shortName": "Consolidated Statements of Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:CostOfRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1040 - Disclosure - Credit Agreement and Long-Term Debt (Tables)",
     "menuCat": "Tables",
     "order": "40",
     "role": "http://astro-med.com/role/CreditAgreementAndLongTermDebtTables",
     "shortName": "Credit Agreement and Long-Term Debt (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1041 - Disclosure - Derivative Financial Instruments and Risk Management (Tables)",
     "menuCat": "Tables",
     "order": "41",
     "role": "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementTables",
     "shortName": "Derivative Financial Instruments and Risk Management (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alot:ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1042 - Disclosure - Leases (Tables)",
     "menuCat": "Tables",
     "order": "42",
     "role": "http://astro-med.com/role/LeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alot:ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:ComprehensiveIncomeNoteTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1043 - Disclosure - Accumulated Other Comprehensive Loss (Tables)",
     "menuCat": "Tables",
     "order": "43",
     "role": "http://astro-med.com/role/AccumulatedOtherComprehensiveLossTables",
     "shortName": "Accumulated Other Comprehensive Loss (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:ComprehensiveIncomeNoteTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1044 - Disclosure - Share-Based Compensation (Tables)",
     "menuCat": "Tables",
     "order": "44",
     "role": "http://astro-med.com/role/ShareBasedCompensationTables",
     "shortName": "Share-Based Compensation (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1045 - Disclosure - Income Taxes (Tables)",
     "menuCat": "Tables",
     "order": "45",
     "role": "http://astro-med.com/role/IncomeTaxesTables",
     "shortName": "Income Taxes (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1046 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information (Tables)",
     "menuCat": "Tables",
     "order": "46",
     "role": "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationTables",
     "shortName": "Nature of Operations, Segment Reporting and Geographical Information (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1047 - Disclosure - Product Warranty Liability (Tables)",
     "menuCat": "Tables",
     "order": "47",
     "role": "http://astro-med.com/role/ProductWarrantyLiabilityTables",
     "shortName": "Product Warranty Liability (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1048 - Disclosure - Fair Value Measurements (Tables)",
     "menuCat": "Tables",
     "order": "48",
     "role": "http://astro-med.com/role/FairValueMeasurementsTables",
     "shortName": "Fair Value Measurements (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
       "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alot:CashEquivalentsMaturityPeriodDescription",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1049 - Disclosure - Summary of Significant Accounting Policies - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "49",
     "role": "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail",
     "shortName": "Summary of Significant Accounting Policies - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
       "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alot:CashEquivalentsMaturityPeriodDescription",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1005 - Statement - Consolidated Statements of Comprehensive Income",
     "menuCat": "Statements",
     "order": "5",
     "role": "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome",
     "shortName": "Consolidated Statements of Comprehensive Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn08_04_2022",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1050 - Disclosure - Acquisitions - Summary of Purchase Price of Acquisition Allocated on Basis of Fair Value (Detail)",
     "menuCat": "Details",
     "order": "50",
     "role": "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail",
     "shortName": "Acquisitions - Summary of Purchase Price of Acquisition Allocated on Basis of Fair Value (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn08_04_2022",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P08_04_2022To08_04_2022",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1051 - Disclosure - Acquisitions - Summary of Fair Value of the Acquired Identifiable Intangible Assets and Related Estimated Useful Lives (Detail)",
     "menuCat": "Details",
     "order": "51",
     "role": "http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail",
     "shortName": "Acquisitions - Summary of Fair Value of the Acquired Identifiable Intangible Assets and Related Estimated Useful Lives (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P08_04_2022To08_04_2022",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:BusinessAcquisitionProFormaInformationTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P08_04_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "alot:BusinessAcquisitionRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1052 - Disclosure - Acquisitions - Summary of Revenue and Earnings Before Taxes (Detail)",
     "menuCat": "Details",
     "order": "52",
     "role": "http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail",
     "shortName": "Acquisitions - Summary of Revenue and Earnings Before Taxes (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:BusinessAcquisitionProFormaInformationTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P08_04_2022To01_31_2023_AgreementWithAstroMachineForAssetAcquisitionsMemberusgaapBusinessAcquisitionAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "alot:BusinessAcquisitionRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023_CustomerRelatedIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1053 - Disclosure - Acquisitions - Summary of Acquired Identifiable Intangible Asset (Detail)",
     "menuCat": "Details",
     "order": "53",
     "role": "http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail",
     "shortName": "Acquisitions - Summary of Acquired Identifiable Intangible Asset (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023_CustomerRelatedIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationConsiderationTransferred1",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1054 - Disclosure - Acquisitions - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "54",
     "role": "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
     "shortName": "Acquisitions - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn08_04_2022",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:AreaOfLand",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_sqft",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1055 - Disclosure - Revenue Recognition - Summary of Revenues Disaggregated by Primary Geographic Markets (Detail)",
     "menuCat": "Details",
     "order": "55",
     "role": "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail",
     "shortName": "Revenue Recognition - Summary of Revenues Disaggregated by Primary Geographic Markets (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023_OthersCountriesMembersrtStatementGeographicalAxis",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1056 - Disclosure - Revenue Recognition - Summary of Revenues Disaggregated by Primary Product Type (Detail)",
     "menuCat": "Details",
     "order": "56",
     "role": "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail",
     "shortName": "Revenue Recognition - Summary of Revenues Disaggregated by Primary Product Type (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023_HardwareProductsMembersrtProductOrServiceAxis",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ContractWithCustomerLiabilityCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1057 - Disclosure - Revenue Recognition - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "57",
     "role": "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail",
     "shortName": "Revenue Recognition - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ContractWithCustomerLiabilityCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1058 - Disclosure - Intangible Assets - Fair Value of Acquired Identifiable Intangible Assets and Related Estimated Useful Lives (Detail)",
     "menuCat": "Details",
     "order": "58",
     "role": "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail",
     "shortName": "Intangible Assets - Fair Value of Acquired Identifiable Intangible Assets and Related Estimated Useful Lives (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ImpairmentOfIntangibleAssetsFinitelived",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1059 - Disclosure - Intangible Assets - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "59",
     "role": "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail",
     "shortName": "Intangible Assets - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ImpairmentOfIntangibleAssetsFinitelived",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1006 - Statement - Consolidated Statements of Changes in Shareholders' Equity",
     "menuCat": "Statements",
     "order": "6",
     "role": "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity",
     "shortName": "Consolidated Statements of Changes in Shareholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2020_CommonStockMemberusgaapStatementEquityComponentsAxis",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1060 - Disclosure - Intangible Assets - Summary of Estimated Amortization Expense (Detail)",
     "menuCat": "Details",
     "order": "60",
     "role": "http://astro-med.com/role/IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail",
     "shortName": "Intangible Assets - Summary of Estimated Amortization Expense (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alot:InventoryDemonstrationEquipment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1061 - Disclosure - Inventories - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "61",
     "role": "http://astro-med.com/role/InventoriesAdditionalInformationDetail",
     "shortName": "Inventories - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alot:InventoryDemonstrationEquipment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsAndSupplies",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1062 - Disclosure - Inventories - Components of Inventories (Detail)",
     "menuCat": "Details",
     "order": "62",
     "role": "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail",
     "shortName": "Inventories - Components of Inventories (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsAndSupplies",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LandAndLandImprovements",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1063 - Disclosure - Property, Plant and Equipment - Summary of Property, Plant and Equipment (Detail)",
     "menuCat": "Details",
     "order": "63",
     "role": "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail",
     "shortName": "Property, Plant and Equipment - Summary of Property, Plant and Equipment (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LandAndLandImprovements",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1064 - Disclosure - Property, Plant and Equipment - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "64",
     "role": "http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail",
     "shortName": "Property, Plant and Equipment - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProductWarrantyAccrualClassifiedCurrent",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1065 - Disclosure - Accrued Expenses - Summary of Accrued Expenses (Detail)",
     "menuCat": "Details",
     "order": "65",
     "role": "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail",
     "shortName": "Accrued Expenses - Summary of Accrued Expenses (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:AccruedProfessionalFeesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentCarryingAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1066 - Disclosure - Credit Agreement and Long- Term Debt - Schedule of Long Term Debt in the Accompanying Condensed Consolidated Balance Sheets (Detail)",
     "menuCat": "Details",
     "order": "66",
     "role": "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail",
     "shortName": "Credit Agreement and Long- Term Debt - Schedule of Long Term Debt in the Accompanying Condensed Consolidated Balance Sheets (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentCarryingAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1067 - Disclosure - Credit Agreement and Long- Term Debt- Schedule of Required Principal Payments Remaining on Long Term Debt Outstanding (Detail)",
     "menuCat": "Details",
     "order": "67",
     "role": "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail",
     "shortName": "Credit Agreement and Long- Term Debt- Schedule of Required Principal Payments Remaining on Long Term Debt Outstanding (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023_TermLoanMemberusgaapCreditFacilityAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:LineOfCredit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1068 - Disclosure - Credit Agreement and Long- Term Debt - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "68",
     "role": "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
     "shortName": "Credit Agreement and Long- Term Debt - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:LineOfCredit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:GainsLossesOnExtinguishmentOfDebt",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1069 - Disclosure - Paycheck Protection Program Loan - Additional information (Detail)",
     "menuCat": "Details",
     "order": "69",
     "role": "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
     "shortName": "Paycheck Protection Program Loan - Additional information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "alot:DisclosureForPaycheckProtectionProgramLoanTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn05_06_2020_GreenwoodCreditUnionMemberusgaapDebtInstrumentAxis_PaycheckProtectionProgramLoanMemberusgaapCreditFacilityAxis",
      "decimals": "-5",
      "lang": null,
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2020To01_31_2021",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockDividendsPerShareCashPaid",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD_per_Share",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1007 - Statement - Consolidated Statements of Changes in Shareholders' Equity (Parenthetical)",
     "menuCat": "Statements",
     "order": "7",
     "role": "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquityParenthetical",
     "shortName": "Consolidated Statements of Changes in Shareholders' Equity (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2020To01_31_2021",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockDividendsPerShareCashPaid",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD_per_Share",
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P08_01_2021To10_30_2021_CashFlowHedgingMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alot:CashPaidTerminationOfSwaps",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1070 - Disclosure - Derivative Financial Instruments and Risk Management - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "70",
     "role": "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail",
     "shortName": "Derivative Financial Instruments and Risk Management - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P08_01_2021To10_30_2021_CashFlowHedgingMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alot:CashPaidTerminationOfSwaps",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1071 - Disclosure - Derivative Financial Instruments and Risk Management - Schedule of Impact of the Derivative Instruments in the Condensed Consolidated Financial Statements (Detail)",
     "menuCat": "Details",
     "order": "71",
     "role": "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail",
     "shortName": "Derivative Financial Instruments and Risk Management - Schedule of Impact of the Derivative Instruments in the Condensed Consolidated Financial Statements (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023_CashFlowHedgeMemberusgaapDerivativeInstrumentsGainLossByHedgingRelationshipAxis_CrossCurrencyInterestRateContractMemberusgaapDerivativeInstrumentRiskAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn03_22_2022",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alot:ErcReceivables",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1072 - Disclosure - Employee Retention Credit - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "72",
     "role": "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail",
     "shortName": "Employee Retention Credit - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn03_22_2022",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alot:ErcReceivables",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "alot:DisclosureForTheHoneywellRoyaltyObligationTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alot:GuaranteedMinimumRoyaltyPayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1073 - Disclosure - Royalty Obligation - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "73",
     "role": "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail",
     "shortName": "Royalty Obligation - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "alot:DisclosureForTheHoneywellRoyaltyObligationTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alot:GuaranteedMinimumRoyaltyPayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1074 - Disclosure - Leases - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "74",
     "role": "http://astro-med.com/role/LeasesAdditionalInformationDetail",
     "shortName": "Leases - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1075 - Disclosure - Leases - Schedule Of Balance Sheet And Other Information Related To Operating Leases (Detail)",
     "menuCat": "Details",
     "order": "75",
     "role": "http://astro-med.com/role/LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail",
     "shortName": "Leases - Schedule Of Balance Sheet And Other Information Related To Operating Leases (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R76": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1076 - Disclosure - Leases - Lease Cost Information (Detail)",
     "menuCat": "Details",
     "order": "76",
     "role": "http://astro-med.com/role/LeasesLeaseCostInformationDetail",
     "shortName": "Leases - Lease Cost Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023_GeneralAndAdministrativeExpenseMemberusgaapIncomeStatementLocationAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1077 - Disclosure - Leases - Maturities of lease liabilities (Detail)",
     "menuCat": "Details",
     "order": "77",
     "role": "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail",
     "shortName": "Leases - Maturities of lease liabilities (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1078 - Disclosure - Leases - Supplemental cash flow information (Detail)",
     "menuCat": "Details",
     "order": "78",
     "role": "http://astro-med.com/role/LeasesSupplementalCashFlowInformationDetail",
     "shortName": "Leases - Supplemental cash flow information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2022",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1079 - Disclosure - Accumulated Other Comprehensive Loss - Changes in Balance of Accumulated Other Comprehensive Loss (Detail)",
     "menuCat": "Details",
     "order": "79",
     "role": "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail",
     "shortName": "Accumulated Other Comprehensive Loss - Changes in Balance of Accumulated Other Comprehensive Loss (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "us-gaap:ComprehensiveIncomeNoteTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProfitLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1008 - Statement - Consolidated Statements of Cash Flows",
     "menuCat": "Statements",
     "order": "8",
     "role": "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows",
     "shortName": "Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProfitLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "alot:StockDeliveredDuringPeriodSharesStockOptionsExercise",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1080 - Disclosure - Shareholders' Equity - Additional information (Detail)",
     "menuCat": "Details",
     "order": "80",
     "role": "http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail",
     "shortName": "Shareholders' Equity - Additional information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "alot:StockDeliveredDuringPeriodSharesStockOptionsExercise",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1081 - Disclosure - Share-Based Compensation - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "81",
     "role": "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail",
     "shortName": "Share-Based Compensation - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockOptionPlanExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1082 - Disclosure - Share-Based Compensation - Share-Based Compensation Expense (Detail)",
     "menuCat": "Details",
     "order": "82",
     "role": "http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail",
     "shortName": "Share-Based Compensation - Share-Based Compensation Expense (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockOptionPlanExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2022",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1083 - Disclosure - Share-Based Compensation - Aggregated Information Regarding Stock Options Granted (Detail)",
     "menuCat": "Details",
     "order": "83",
     "role": "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail",
     "shortName": "Share-Based Compensation - Aggregated Information Regarding Stock Options Granted (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     }
    },
    "R84": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1084 - Disclosure - Share-Based Compensation - Summary of Options Outstanding (Detail)",
     "menuCat": "Details",
     "order": "84",
     "role": "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail",
     "shortName": "Share-Based Compensation - Summary of Options Outstanding (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "2",
      "lang": null,
      "name": "us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD_per_Share",
      "xsiNil": "false"
     }
    },
    "R85": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2022_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1085 - Disclosure - Share-Based Compensation - Aggregated Information Regarding RSUs and RSAs Granted (Detail)",
     "menuCat": "Details",
     "order": "85",
     "role": "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail",
     "shortName": "Share-Based Compensation - Aggregated Information Regarding RSUs and RSAs Granted (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2020_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMemberusgaapAwardTypeAxis",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     }
    },
    "R86": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1086 - Disclosure - Income Taxes - Components of Income before Income Taxes (Detail)",
     "menuCat": "Details",
     "order": "86",
     "role": "http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail",
     "shortName": "Income Taxes - Components of Income before Income Taxes (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R87": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1087 - Disclosure - Income Taxes - Components of Provision for Income Taxes (Detail)",
     "menuCat": "Details",
     "order": "87",
     "role": "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail",
     "shortName": "Income Taxes - Components of Provision for Income Taxes (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R88": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1088 - Disclosure - Income Taxes - Reconciliation of income tax provision/(benefit) With The Amount Computed By Applying The Statutory Federal Income Tax Rate To The Income Before Income Tax Provision/(benefit) (Detail)",
     "menuCat": "Details",
     "order": "88",
     "role": "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail",
     "shortName": "Income Taxes - Reconciliation of income tax provision/(benefit) With The Amount Computed By Applying The Statutory Federal Income Tax Rate To The Income Before Income Tax Provision/(benefit) (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R89": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsInventory",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1089 - Disclosure - Income Taxes - Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities (Detail)",
     "menuCat": "Details",
     "order": "89",
     "role": "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail",
     "shortName": "Income Taxes - Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsInventory",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1009 - Disclosure - Summary of Significant Accounting Policies",
     "menuCat": "Notes",
     "order": "9",
     "role": "http://astro-med.com/role/SummaryOfSignificantAccountingPolicies",
     "shortName": "Summary of Significant Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R90": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alot:IncreaseDecreaseInDeferredTaxAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1090 - Disclosure - Income Taxes - Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities (Parenthetical) (Detail)",
     "menuCat": "Details",
     "order": "90",
     "role": "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesParentheticalDetail",
     "shortName": "Income Taxes - Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities (Parenthetical) (Detail)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alot:IncreaseDecreaseInDeferredTaxAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R91": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2022",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1091 - Disclosure - Income Taxes - Change in Balance of Unrecognized Tax Benefits, Excluding Interest and Penalties (Detail)",
     "menuCat": "Details",
     "order": "91",
     "role": "http://astro-med.com/role/IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail",
     "shortName": "Income Taxes - Change in Balance of Unrecognized Tax Benefits, Excluding Interest and Penalties (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R92": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "3",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1092 - Disclosure - Income Taxes - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "92",
     "role": "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail",
     "shortName": "Income Taxes - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "3",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     }
    },
    "R93": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NumberOfReportableSegments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Segment",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1093 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "93",
     "role": "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail",
     "shortName": "Nature of Operations, Segment Reporting and Geographical Information - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NumberOfReportableSegments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Segment",
      "xsiNil": "false"
     }
    },
    "R94": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1094 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information - Net Sales and Segment Operating Profit (loss)  for Each Reporting Segment (Detail)",
     "menuCat": "Details",
     "order": "94",
     "role": "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail",
     "shortName": "Nature of Operations, Segment Reporting and Geographical Information - Net Sales and Segment Operating Profit (loss)  for Each Reporting Segment (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "3",
      "lang": null,
      "name": "alot:PercentageOfOperatingProfitToNetSales",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     }
    },
    "R95": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Assets",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1095 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information - Summary of Other Information by Segment (Detail)",
     "menuCat": "Details",
     "order": "95",
     "role": "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail",
     "shortName": "Nature of Operations, Segment Reporting and Geographical Information - Summary of Other Information by Segment (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023_OperatingSegmentsMembersrtConsolidationItemsAxis_ProductIdentificationMemberusgaapStatementBusinessSegmentsAxis",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:Assets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R96": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1096 - Disclosure - Nature of Operations, Segment Reporting and Geographical Information - Summary of Selected Financial Information by Geographic Area (Detail)",
     "menuCat": "Details",
     "order": "96",
     "role": "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail",
     "shortName": "Nature of Operations, Segment Reporting and Geographical Information - Summary of Selected Financial Information by Geographic Area (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2023",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:NoncurrentAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R97": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1097 - Disclosure - Employee Benefit Plans - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "97",
     "role": "http://astro-med.com/role/EmployeeBenefitPlansAdditionalInformationDetail",
     "shortName": "Employee Benefit Plans - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R98": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "PAsOn01_31_2022",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProductWarrantyAccrualClassifiedCurrent",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1098 - Disclosure - Product Warranty Liability - Activity in Product Warranty Liability (Detail)",
     "menuCat": "Details",
     "order": "98",
     "role": "http://astro-med.com/role/ProductWarrantyLiabilityActivityInProductWarrantyLiabilityDetail",
     "shortName": "Product Warranty Liability - Activity in Product Warranty Liability (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:ProductWarrantyAccrualWarrantiesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R99": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "alot:Reimbursementreceivedfromvendor",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1099 - Disclosure - Product Warranty Liability - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "99",
     "role": "http://astro-med.com/role/ProductWarrantyLiabilityAdditionalInformationDetail",
     "shortName": "Product Warranty Liability - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d415415d10k.htm",
      "contextRef": "P02_01_2022To01_31_2023",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "alot:Reimbursementreceivedfromvendor",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 108,
   "tag": {
    "alot_AccruedFreight": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail": {
       "order": 8.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued freight.",
        "label": "Accrued Freight",
        "terseLabel": "Freight"
       }
      }
     },
     "localname": "AccruedFreight",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_AccruedPayrollAndSalesTaxesCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued payroll and sales taxes current.",
        "label": "Accrued Payroll and Sales Taxes Current",
        "terseLabel": "Accrued Property &amp; Sales Tax"
       }
      }
     },
     "localname": "AccruedPayrollAndSalesTaxesCurrent",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 26.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued royalties in excess of guaranteed minimum royalty obligation- amount due within one year.",
        "label": "Accrued Royalties, Current, Excess Royalty Payment Due",
        "positiveLabel": "Accrued Royalties, Current, Excess Royalty Payment Due",
        "verboseLabel": "Current Liability\u2014Excess Royalty Payment Due"
       }
      }
     },
     "localname": "AccruedRoyaltiesCurrentExcessRoyaltyPaymentDue",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_AccruedStockHolderRelationFees": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued stock holder relation fees.",
        "label": "Accrued Stock Holder Relation Fees",
        "terseLabel": "Stockholder Relation Fees"
       }
      }
     },
     "localname": "AccruedStockHolderRelationFees",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_AdditionalCapitalizedContractCostsAmortizationPeriodRemaining": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amortization period remaining for additional capitalized contract costs.",
        "label": "Additional Capitalized Contract Costs Amortization Period Remaining",
        "terseLabel": "Capitalized contract costs additional amounts incurred amortization period"
       }
      }
     },
     "localname": "AdditionalCapitalizedContractCostsAmortizationPeriodRemaining",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "alot_AdditionalForeignTaxCreditMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Foreign Tax Credit [Member]",
        "terseLabel": "Additional Foreign Tax Credit [Member]"
       }
      }
     },
     "localname": "AdditionalForeignTaxCreditMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_AdditionalTermLoanAvailedMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additional term loan availed.",
        "label": "Additional Term Loan Availed [Member]",
        "terseLabel": "Additional Term Loan Availed [Member]"
       }
      }
     },
     "localname": "AdditionalTermLoanAvailedMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_AerospaceCustomerMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aerospace customer.",
        "label": "Aerospace Customer [Member]"
       }
      }
     },
     "localname": "AerospaceCustomerMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_AgreementWithAstroMachineForAssetAcquisitionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agreement with astro machine for asset acquisitions.",
        "label": "Agreement With Astro Machine For Asset Acquisitions [Member]",
        "terseLabel": "Agreement With Astro Machine For Asset Acquisitions [Member]"
       }
      }
     },
     "localname": "AgreementWithAstroMachineForAssetAcquisitionsMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail",
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_AirborneProductMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Airborne product.",
        "label": "Airborne Product [Member]",
        "terseLabel": "Airborne Product [Member]"
       }
      }
     },
     "localname": "AirborneProductMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_BankOfAmericaMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Bank of america.",
        "label": "Bank Of America [Member]",
        "terseLabel": "Bank of America, N.A. [Member]"
       }
      }
     },
     "localname": "BankOfAmericaMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_BeforeAmendmentToTheCreditAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Before amendment to the credit agreement.",
        "label": "Before Amendment To The Credit Agreement [Member]",
        "terseLabel": "Before Amendment To The Credit Agreement [Member]"
       }
      }
     },
     "localname": "BeforeAmendmentToTheCreditAgreementMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_BuildingAndLeaseholdImprovementsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Building And Leasehold Improvements [Member]",
        "label": "Building And Leasehold Improvements [Member]",
        "terseLabel": "Building And Leasehold Improvements [Member]"
       }
      }
     },
     "localname": "BuildingAndLeaseholdImprovementsMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_BusinessAcquisitionEarningBeforeTaxes": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business acquisition earning before taxes from date of acquisition.",
        "label": "Business Acquisition Earning Before Taxes",
        "terseLabel": "Earnings before Taxes"
       }
      }
     },
     "localname": "BusinessAcquisitionEarningBeforeTaxes",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_BusinessAcquisitionProFormaInformationLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business acquisition pro forma information.",
        "label": "Business Acquisition Pro Forma Information [Line Items]"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaInformationLineItems",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_BusinessAcquisitionProFormaInformationTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business acquisition pro forma information.",
        "label": "Business Acquisition Pro Forma Information [Table]"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaInformationTable",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_BusinessAcquisitionRevenue": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business acquisition revenue from date of acquisition.",
        "label": "Business Acquisition Revenue",
        "terseLabel": "Revenue"
       }
      }
     },
     "localname": "BusinessAcquisitionRevenue",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail": {
       "order": 7.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business combination, recognized identifiable assets acquired and liabilities assumed, goodwill.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Goodwill",
        "terseLabel": "Goodwill"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_CapitalizedContractCostNetLongTermAndShortTerm": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Capitalized contract cost net long term and short term.",
        "label": "Capitalized Contract Cost Net Long Term And Short Term",
        "terseLabel": "Capitalized contract cost net long term and short term"
       }
      }
     },
     "localname": "CapitalizedContractCostNetLongTermAndShortTerm",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Capitalized contract costs additional amounts incurred amortization period.",
        "label": "Capitalized Contract Costs Additional Amounts Incurred Amortization Period",
        "terseLabel": "Capitalized contract costs additional amounts incurred amortization period"
       }
      }
     },
     "localname": "CapitalizedContractCostsAdditionalAmountsIncurredAmortizationPeriod",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "alot_CaresActMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cares Act [Member]",
        "terseLabel": "Cares Act [Member]"
       }
      }
     },
     "localname": "CaresActMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_CashEquivalentsMaturityPeriodDescription": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash equivalents maturity period description.",
        "label": "Cash Equivalents Maturity Period Description",
        "terseLabel": "Highly liquid investments with an original maturity"
       }
      }
     },
     "localname": "CashEquivalentsMaturityPeriodDescription",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_CashFlowHedgeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash flow hedge.",
        "label": "Cash Flow Hedge [Member]",
        "terseLabel": "Cash Flow Hedge [Member]"
       }
      }
     },
     "localname": "CashFlowHedgeMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_CashHeldInForeignBankAccounts": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash held in foreign bank accounts.",
        "label": "Cash Held In Foreign Bank Accounts",
        "terseLabel": "Cash of held in foreign bank accounts"
       }
      }
     },
     "localname": "CashHeldInForeignBankAccounts",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash paid for amounts included in the measurement of lease liabilities [Abstract]",
        "verboseLabel": "Cash paid for amounts included in the measurement of lease liabilities [Abstract]"
       }
      }
     },
     "localname": "CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/LeasesSupplementalCashFlowInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_CashPaidTerminationOfSwaps": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash paid termination of swaps.",
        "label": "Cash Paid Termination Of Swaps",
        "terseLabel": "Cash paid termination of swaps"
       }
      }
     },
     "localname": "CashPaidTerminationOfSwaps",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_CentralAndSouthAmericaMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Central and South America.",
        "label": "Central And South America [Member]",
        "terseLabel": "Central and South America [Member]"
       }
      }
     },
     "localname": "CentralAndSouthAmericaMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail",
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_ComputerEquipmentAndSoftwareMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Computer Equipment And Software [Member]",
        "label": "Computer Equipment And Software [Member]",
        "terseLabel": "Computer Equipment And Software [Member]"
       }
      }
     },
     "localname": "ComputerEquipmentAndSoftwareMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contract with customer liability revenue recognized including additions.",
        "label": "Contract With Customer Liability Revenue Recognized Including Additions",
        "terseLabel": "Revenue recognized"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityRevenueRecognizedIncludingAdditions",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_CreditAgreementAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Credit Agreement",
        "label": "Credit Agreement [Axis]"
       }
      }
     },
     "localname": "CreditAgreementAxis",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_CreditAgreementDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Credit Agreement",
        "label": "Credit Agreement [Domain]"
       }
      }
     },
     "localname": "CreditAgreementDomain",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_CustomerMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Member]",
        "terseLabel": "Customer [Member]"
       }
      }
     },
     "localname": "CustomerMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_DebtInstrumentAdditionalBasisSpread": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt instrument additional basis spread.",
        "label": "Debt Instrument Additional Basis Spread",
        "verboseLabel": "Percentage added to variable rate"
       }
      }
     },
     "localname": "DebtInstrumentAdditionalBasisSpread",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "alot_DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Decrease In amortization expense",
        "label": "Decrease In Amortization Expense Due to Change of Amortization Method",
        "terseLabel": "Decrease In amortization expense"
       }
      }
     },
     "localname": "DecreaseInAmortizationExpenseDueToChangeOfAmortizationMethod",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 16.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Tax Assets Accounting Standard Adjustment Lease Liability",
        "label": "Deferred Tax Assets Accounting Standard Adjustment Lease Liability",
        "terseLabel": "ASU 842 Adjustment \u2013 Lease Liability"
       }
      }
     },
     "localname": "DeferredTaxAssetsAccountingStandardAdjustmentLeaseLiability",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_DeferredTaxAssetsCapitalization": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 17.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets capitalization.",
        "label": "Deferred Tax Assets Capitalization",
        "terseLabel": "Section 174 Capitalization"
       }
      }
     },
     "localname": "DeferredTaxAssetsCapitalization",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_DeferredTaxAssetsCompensationAccruals": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 8.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets compensation accruals.",
        "label": "Deferred Tax Assets Compensation Accruals",
        "terseLabel": "Compensation Accrual"
       }
      }
     },
     "localname": "DeferredTaxAssetsCompensationAccruals",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_DeferredTaxAssetsDeferredServiceContractRevenue": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 11.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets deferred service contract revenue.",
        "label": "Deferred Tax Assets Deferred Service Contract Revenue",
        "terseLabel": "Deferred Service Contract Revenue"
       }
      }
     },
     "localname": "DeferredTaxAssetsDeferredServiceContractRevenue",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_DeferredTaxAssetsLiabilitiesGross": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets liabilities gross.",
        "label": "Deferred Tax Assets Liabilities Gross",
        "totalLabel": "Subtotal"
       }
      }
     },
     "localname": "DeferredTaxAssetsLiabilitiesGross",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets operating loss carryforwards expiration period.",
        "label": "Deferred Tax Assets Operating Loss Carryforwards Expiration Period",
        "terseLabel": "Deferred tax assets operating loss carryforwards expiration period"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwardsExpirationPeriod",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_DeferredTaxAssetsRoyaltyLiability": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets, royalty liability.",
        "label": "Deferred Tax Assets, Royalty Liability",
        "terseLabel": "Honeywell Royalty Liability"
       }
      }
     },
     "localname": "DeferredTaxAssetsRoyaltyLiability",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets tax credit carryforwards expiration period.",
        "label": "Deferred Tax Assets Tax credit Carryforwards Expiration Period",
        "terseLabel": "Deferred tax assets tax credit carryforwards expiration period"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxCreditCarryforwardsExpirationPeriod",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_DeferredTaxAssetsUnrecognizedTaxBenefits": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 10.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets unrecognized tax benefits.",
        "label": "Deferred Tax Assets Unrecognized Tax Benefits",
        "terseLabel": "Unrecognized State Tax Benefits"
       }
      }
     },
     "localname": "DeferredTaxAssetsUnrecognizedTaxBenefits",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 22.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Tax Liability Accounting Standard Adjustment Lease Liability",
        "label": "Deferred Tax Liability Accounting Standard Adjustment Lease Liability",
        "terseLabel": "ASU 842 Adjustment \u2013 Lease Liability"
       }
      }
     },
     "localname": "DeferredTaxLiabilityAccountingStandardAdjustmentLeaseLiability",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_DetailsAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Details [Axis].",
        "label": "Details [Axis]"
       }
      }
     },
     "localname": "DetailsAxis",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_DetailsDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Details [Domain].",
        "label": "Details [Domain]"
       }
      }
     },
     "localname": "DetailsDomain",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_DetailsOfIncomeTaxBenefitAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Details Of Income Tax Benefit [Axis]"
       }
      }
     },
     "localname": "DetailsOfIncomeTaxBenefitAxis",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_DetailsOfIncomeTaxBenefitDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Details Of Income Tax Benefit [Domain]"
       }
      }
     },
     "localname": "DetailsOfIncomeTaxBenefitDomain",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_DetailsOneAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Details One [Axis].",
        "label": "Details One [Axis]"
       }
      }
     },
     "localname": "DetailsOneAxis",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_DetailsOneDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Details One [Domain].",
        "label": "Details One [Domain]"
       }
      }
     },
     "localname": "DetailsOneDomain",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_DisclosureForEmployeeRetentionCreditTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure for Employee retention credit.",
        "label": "Disclosure For Employee Retention Credit [Text Block]",
        "terseLabel": "Employee Retention Credit"
       }
      }
     },
     "localname": "DisclosureForEmployeeRetentionCreditTextBlock",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCredit"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alot_DisclosureForPaycheckProtectionProgramLoanTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure for Paycheck Protection Program Loan.",
        "label": "Disclosure For Paycheck Protection Program Loan [Text Block]",
        "terseLabel": "Paycheck Protection Program Loan"
       }
      }
     },
     "localname": "DisclosureForPaycheckProtectionProgramLoanTextBlock",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/PaycheckProtectionProgramLoan"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alot_DisclosureForTheHoneywellRoyaltyObligationTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure for the honeywell royalty obligation.",
        "label": "Disclosure For The Honeywell Royalty Obligation [Text Block]",
        "terseLabel": "Royalty Obligation"
       }
      }
     },
     "localname": "DisclosureForTheHoneywellRoyaltyObligationTextBlock",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RoyaltyObligation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alot_DistributorRelationsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Distributor relations.",
        "label": "Distributor Relations [Member]",
        "terseLabel": "Distributor Relations [Member]"
       }
      }
     },
     "localname": "DistributorRelationsMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_EmployeeRetentionCredit": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Employee retention credit.",
        "label": "Employee Retention Credit",
        "terseLabel": "Employee retention credit"
       }
      }
     },
     "localname": "EmployeeRetentionCredit",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_EmployeeRetentionCreditDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Employee retention credit disclosure.",
        "label": "Employee Retention Credit Disclosure [Abstract]",
        "terseLabel": "Employee Retention Credit Disclosure [Abstract]"
       }
      }
     },
     "localname": "EmployeeRetentionCreditDisclosureAbstract",
     "nsuri": "http://astro-med.com/20230131",
     "xbrltype": "stringItemType"
    },
    "alot_EmployeeRetentionCreditDisclosureLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Employee retention credit disclosure [Line item].",
        "label": "Employee Retention Credit Disclosure [Line Items]"
       }
      }
     },
     "localname": "EmployeeRetentionCreditDisclosureLineItems",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_EmployeeRetentionCreditDisclosureTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Employee retention credit disclosure [Table ].",
        "label": "Employee Retention Credit Disclosure [Table]"
       }
      }
     },
     "localname": "EmployeeRetentionCreditDisclosureTable",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of refundable payroll taxes to be recognized as a reduction of general and administrative expenses related to the Employee Retention Credit granted under the CARES act.",
        "label": "Employee Retention Credit Receivable - general and administrative expenses"
       }
      }
     },
     "localname": "EmployeeRetentionCreditReceivableGeneralAndAdministrativeExpenses",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_EmployeeRetentionCreditReceivableResearchAndDevelopment": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Employee Retention Credit Receivable - Research and Development.",
        "label": "Employee Retention Credit Receivable Research and Development",
        "terseLabel": "Employee Retention Credit Receivable - research and development"
       }
      }
     },
     "localname": "EmployeeRetentionCreditReceivableResearchAndDevelopment",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_EmployeeRetentionCreditReceivableSellingAndMarketing": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of refundable payroll taxes to be recognized as a reduction of selling and marketing expense related to the Employee Retention Credit granted under the CARES act.",
        "label": "Employee Retention Credit Receivable Selling and Marketing",
        "terseLabel": "Employee Retention Credit Receivable - selling and marketing"
       }
      }
     },
     "localname": "EmployeeRetentionCreditReceivableSellingAndMarketing",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_EmployeeRetentionCreditReceivables": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of refundable payroll taxes received.",
        "label": "Employee Retention Credit Receivables",
        "terseLabel": "Employee retention credit receivables"
       }
      }
     },
     "localname": "EmployeeRetentionCreditReceivables",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_EmployeeRetentionCreditReceived": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of ERC refundable payroll taxes received.",
        "label": "Employee Retention Credit Received",
        "terseLabel": "Employee retention credit received"
       }
      }
     },
     "localname": "EmployeeRetentionCreditReceived",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_EmployeeStockPurchasePlanExpense": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_ShareBasedCompensation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Employee stock purchase plan expense.",
        "label": "Employee Stock Purchase Plan Expense",
        "verboseLabel": "Employee Stock Purchase Plan"
       }
      }
     },
     "localname": "EmployeeStockPurchasePlanExpense",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_EmployeeStockPurchasePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Employee stock purchase plan.",
        "label": "Employee Stock Purchase Plan [Member]",
        "terseLabel": "Employee Stock Purchase Plan [Member]"
       }
      }
     },
     "localname": "EmployeeStockPurchasePlanMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_ErcReceivables": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount receivable for Employee Retention Credit .",
        "label": "Erc Receivables",
        "terseLabel": "ERC receivables",
        "verboseLabel": "Employee Retention Credit Receivable"
       }
      }
     },
     "localname": "ErcReceivables",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_ExcessRoyaltyPayments": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of royalty expense paid in excess of guaranteed minimum payments.",
        "label": "Excess Royalty Payments"
       }
      }
     },
     "localname": "ExcessRoyaltyPayments",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_ExistingTechnologyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Existing technology.",
        "label": "Existing Technology [Member]",
        "terseLabel": "Existing Technology [Member]"
       }
      }
     },
     "localname": "ExistingTechnologyMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_FairValueOfIntangibleAssetsMeasurementInput": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of intangible assets measurement input.",
        "label": "Fair Value Of Intangible Assets Measurement Input",
        "terseLabel": "Fair Value Of Intangible Assets Measurement Input"
       }
      }
     },
     "localname": "FairValueOfIntangibleAssetsMeasurementInput",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "decimalItemType"
    },
    "alot_FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finite-lived\u200b intangible assets foreign currency translation adjustment.",
        "label": "Finite Lived Intangible Assets Foreign Currency Translation Adjustment",
        "terseLabel": "Currency Translation Adjustment"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsForeignCurrencyTranslationAdjustment",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_GreenwoodCreditUnionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Green wood credit union.",
        "label": "Greenwood Credit Union [Member]",
        "verboseLabel": "Green wood Credit Union [Member]"
       }
      }
     },
     "localname": "GreenwoodCreditUnionMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_GuaranteedMinimumRoyaltyPayments": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total Amount paid to date on the Guaranteed Minimum Royalty Obligation.",
        "label": "Guaranteed Minimum Royalty Payments"
       }
      }
     },
     "localname": "GuaranteedMinimumRoyaltyPayments",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_HardwareProductsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Hardware products.",
        "label": "Hardware Products [Member]",
        "terseLabel": "Hardware [Member]"
       }
      }
     },
     "localname": "HardwareProductsMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_HoneywellAssetPurchaseAndLicenseAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Honeywell Asset Purchase and License Agreement [Member]",
        "label": "Honeywell Asset Purchase and License Agreement [Member]",
        "terseLabel": "Honeywell Asset Purchase and License Agreement [Member]",
        "verboseLabel": "Honeywell Asset Purchase and License Agreement [Member]"
       }
      }
     },
     "localname": "HoneywellAssetPurchaseAndLicenseAgreementMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail",
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail",
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 12.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income tax reconciliation global intangible low taxed income.",
        "label": "Income Tax Reconciliation Global Intangible Low Taxed Income",
        "negatedLabel": "Global Intangible Low Taxed Income"
       }
      }
     },
     "localname": "IncomeTaxReconciliationGlobalIntangibleLowTaxedIncome",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 13.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income Tax Reconciliation Other Adjustments Statuory Audit",
        "label": "Income Tax Reconciliation Other Adjustments Statuory Audit",
        "negatedLabel": "Denmark Statutory Audit"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherAdjustmentsStatuoryAudit",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 14.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income Tax Reconciliation Other Adjustments Withholding Taxes",
        "label": "Income Tax Reconciliation Other Adjustments Withholding Taxes",
        "negatedLabel": "Canada Withholding Taxes"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherAdjustmentsWithholdingTaxes",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_IncomeTaxReconciliationPppLoanForgiveness": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 15.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income tax reconciliation ppp loan forgiveness.",
        "label": "Income Tax Reconciliation PPP Loan Forgiveness",
        "terseLabel": "PPP Loan Forgiveness"
       }
      }
     },
     "localname": "IncomeTaxReconciliationPppLoanForgiveness",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_Incometaxreconciliationchangeinreserves": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 11.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income tax reconciliation change in reserves.",
        "label": "IncomeTaxReconciliationChangeInReserves",
        "terseLabel": "Change in Reserves Related to ASC 740 Liability"
       }
      }
     },
     "localname": "Incometaxreconciliationchangeinreserves",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_IncreaseDecreaseInDeferredTaxAssets": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase decrease in deferred tax assets.",
        "label": "Increase Decrease In Deferred Tax Assets",
        "terseLabel": "Increase decrease in deferred tax assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInDeferredTaxAssets",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesParentheticalDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase in net income due to change in the method of amortization.",
        "label": "Increase In Net Income Due To Change In The Method Of Amortization",
        "terseLabel": "Increase in net income due to change of amortization method"
       }
      }
     },
     "localname": "IncreaseInNetIncomeDueToChangeInTheMethodOfAmortization",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_IntangibleAssetsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Intangible Assets [Line Items]",
        "label": "Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "IntangibleAssetsLineItems",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_IntangibleAssetsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Intangible Assets [Table]",
        "label": "Intangible Assets [Table]"
       }
      }
     },
     "localname": "IntangibleAssetsTable",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_InventoryDemonstrationEquipment": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory demonstration equipment.",
        "label": "Inventory Demonstration Equipment",
        "terseLabel": "Inventory demonstration equipment"
       }
      }
     },
     "localname": "InventoryDemonstrationEquipment",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/InventoriesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maximum threshold employee retention credit per employee per calendar quarter.",
        "label": "Maximum Threshold Employee Retention Credit Per Employee Per Calendar Quarter",
        "terseLabel": "Maximum threshold employee retention credit per employee per calendar quarter"
       }
      }
     },
     "localname": "MaximumThresholdEmployeeRetentionCreditPerEmployeePerCalendarQuarter",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_MeasurementInputCustomerAttritionRateMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement input customer attrition rate.",
        "label": "Measurement Input Customer Attrition Rate [Member]"
       }
      }
     },
     "localname": "MeasurementInputCustomerAttritionRateMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_MeasurementInputRoyaltyRateMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement input royalty rate.",
        "label": "Measurement Input Royalty Rate [Member]"
       }
      }
     },
     "localname": "MeasurementInputRoyaltyRateMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_MiltopeCorporationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Miltope Corporation [Member]",
        "label": "Miltope Corporation [Member]",
        "terseLabel": "Miltope [Member]"
       }
      }
     },
     "localname": "MiltopeCorporationMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_MinimumRoyaltyPaymentObligation": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Minimum Royalty Payment Obligation.",
        "label": "Minimum Royalty Payment Obligation",
        "verboseLabel": "Minimum Royalty Payment Obligation"
       }
      }
     },
     "localname": "MinimumRoyaltyPaymentObligation",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_NonCurrentLiabilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Non current liability.",
        "label": "Non Current Liability [Member]"
       }
      }
     },
     "localname": "NonCurrentLiabilityMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_NumberOfAcresOfLand": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of acres of land.",
        "label": "Number of Acres of land",
        "terseLabel": "Number of Acres of land"
       }
      }
     },
     "localname": "NumberOfAcresOfLand",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_NumberOfCustomersAccountingForCreditRisk": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of customers accounting for credit risk.",
        "label": "Number Of Customers Accounting For Credit Risk",
        "terseLabel": "Customer accounted for greater than 10% of net sales"
       }
      }
     },
     "localname": "NumberOfCustomersAccountingForCreditRisk",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "alot_OperatingLeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Leases [Abstract]",
        "verboseLabel": "Operating Leases [Abstract]"
       }
      }
     },
     "localname": "OperatingLeasesAbstract",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_OtherCountriesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other countries.",
        "label": "Other Countries [Member]",
        "terseLabel": "Other [Member]"
       }
      }
     },
     "localname": "OtherCountriesMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_OtherEmployeeRetentionCreditReceivable": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 25.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount currently receivable for refundable payroll taxes to be received from the Employee Retention Credit granted under the CARES act.",
        "label": "Other Employee Retention Credit Receivable",
        "negatedLabel": "Other Receivable \u2013 Employee Retention Credit Receivable"
       }
      }
     },
     "localname": "OtherEmployeeRetentionCreditReceivable",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_OthersCountriesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Others Countries [Member]",
        "label": "Others Countries [Member]",
        "terseLabel": "Other [Member]"
       }
      }
     },
     "localname": "OthersCountriesMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_PaycheckProtectionProgramLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Paycheck Protection Program Loan [Member]",
        "terseLabel": "Paycheck Protection Program Loan [Member]",
        "verboseLabel": "Paycheck Protection Program Loan [Member]"
       }
      }
     },
     "localname": "PaycheckProtectionProgramLoanMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_PaymentTermPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Payment term period.",
        "label": "Payment Term Period"
       }
      }
     },
     "localname": "PaymentTermPeriod",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "alot_PaymentsOfMinimumGuaranteeRoyaltyObligation": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash Outflow of Minimum Guarantee Royalty Obligation",
        "label": "Payments Of Minimum Guarantee Royalty Obligation",
        "negatedLabel": "Payment of Minimum Guarantee Royalty Obligation"
       }
      }
     },
     "localname": "PaymentsOfMinimumGuaranteeRoyaltyObligation",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_PercentageOfOperatingProfitToNetSales": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of operating profit to net sales.",
        "label": "Percentage Of Operating Profit To Net Sales",
        "terseLabel": "Segment Operating Profit % of Net Sales"
       }
      }
     },
     "localname": "PercentageOfOperatingProfitToNetSales",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "alot_PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of reduction of gross Receipts to qualify for employee retention credit.",
        "label": "Percentage of Reduction of Gross Receipts to Qualify for Employee Retention Credit",
        "terseLabel": "Percentage of reduction of gross Receipts to qualify for employee retention credit"
       }
      }
     },
     "localname": "PercentageOfReductionOfGrossReceiptsToQualifyForEmployeeRetentionCredit",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "alot_PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of refundable tax credit can be claimed of qualified wages.",
        "label": "Percentage of Refundable Tax Credit can be Claimed on Qualified Wages",
        "terseLabel": "Percentage of refundable tax credit can be claimed of qualified wages"
       }
      }
     },
     "localname": "PercentageOfRefundableTaxCreditCanBeClaimedOnQualifiedWages",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "alot_PercentageOfServiceRevenueToTotalRevenue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of service revenue to total revenue.",
        "label": "Percentage Of Service Revenue To Total Revenue",
        "terseLabel": "Percentage of revenue satisfied for services"
       }
      }
     },
     "localname": "PercentageOfServiceRevenueToTotalRevenue",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "alot_PeriodAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period.",
        "label": "Period [Axis]"
       }
      }
     },
     "localname": "PeriodAxis",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_PeriodDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period.",
        "label": "Period [Domain]"
       }
      }
     },
     "localname": "PeriodDomain",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_PriorEmployeeStockPurchasePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Prior employee stock purchase plan member.",
        "label": "Prior Employee Stock Purchase Plan [Member]",
        "terseLabel": "Prior Employee Stock Purchase Plan [Member]"
       }
      }
     },
     "localname": "PriorEmployeeStockPurchasePlanMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_ProceedsFromIssuanceOfPaycheckProtectionProgramLoan": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Proceeds from issuance of paycheck protection program loan.",
        "label": "Proceeds From Issuance Of Paycheck Protection Program Loan",
        "terseLabel": "Proceeds from Long-Term Debt \u2013 PPP Loan"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfPaycheckProtectionProgramLoan",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_ProductIdentificationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Product identification.",
        "label": "Product Identification [Member]",
        "terseLabel": "Product Identification [Member]"
       }
      }
     },
     "localname": "ProductIdentificationMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_ProductsWarrantyPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Products warranty period.",
        "label": "Products Warranty Period",
        "terseLabel": "Products warranty period"
       }
      }
     },
     "localname": "ProductsWarrantyPeriod",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "alot_PromissoryNoteMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Promissory Note [Member]"
       }
      }
     },
     "localname": "PromissoryNoteMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_PurchasePriceIntoAnEscrowAccount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Purchase price into an escrow account.",
        "label": "Purchase Price Into an Escrow Account",
        "terseLabel": "Purchase price into an escrow account"
       }
      }
     },
     "localname": "PurchasePriceIntoAnEscrowAccount",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_RangeFiveMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Range five.",
        "label": "Range Five [Member]",
        "terseLabel": "$15.01 - $20.00 [Member]"
       }
      }
     },
     "localname": "RangeFiveMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_RangeFourMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Range four.",
        "label": "Range Four [Member]",
        "terseLabel": "$10.01 - $15.00 [Member]"
       }
      }
     },
     "localname": "RangeFourMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_RangeThreeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Range three.",
        "label": "Range Three [Member]",
        "terseLabel": "$5.00 - $10.00 [Member]"
       }
      }
     },
     "localname": "RangeThreeMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_ReclassifcationOfInventoriesToPropertyPlantAndEquipment": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reclassifcation of inventories to property, plant and equipment.",
        "label": "Reclassifcation of Inventories to Property, Plant and Equipment",
        "verboseLabel": "Reclassifcation of Inventories to Property, Plant and Equipment"
       }
      }
     },
     "localname": "ReclassifcationOfInventoriesToPropertyPlantAndEquipment",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Recognition of intangible asset and royalty payable related to asset purchase and license agreement.",
        "label": "Recognition Of Intangible Asset And Royalty Payable Related To Asset Purchase And License Agreement",
        "terseLabel": "Recognize intangible asset and royalty payable related to Honeywell Asset Purchase and License Agreement"
       }
      }
     },
     "localname": "RecognitionOfIntangibleAssetAndRoyaltyPayableRelatedToAssetPurchaseAndLicenseAgreement",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_Reimbursementreceivedfromvendor": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reimbursement received from vendor",
        "label": "ReimbursementReceivedFromVendor",
        "verboseLabel": "Reimbursement received from vendor"
       }
      }
     },
     "localname": "Reimbursementreceivedfromvendor",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ProductWarrantyLiabilityAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_ReservationOfSharesUnderEmployeeStockPurchasePlan": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reservation of shares under employee stock purchase plan.",
        "label": "Reservation Of Shares Under Employee Stock Purchase Plan",
        "terseLabel": "Reservation of shares under Stock Purchase Plan"
       }
      }
     },
     "localname": "ReservationOfSharesUnderEmployeeStockPurchasePlan",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "alot_RestrictedStockAwardMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restricted stock award.",
        "label": "Restricted Stock Award [Member]"
       }
      }
     },
     "localname": "RestrictedStockAwardMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restricted stock award preferred stock unit and restricted stock unit member.",
        "label": "Restricted Stock Award Preferred Stock Unit And Restricted Stock Unit [Member]"
       }
      }
     },
     "localname": "RestrictedStockAwardPreferredStockUnitAndRestrictedStockUnitMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Royalty guarantee commitement amount due current and non current discounted value.",
        "label": "Royalty Guarantee Commitement Amount Due Current and Non Current Discounted Value",
        "terseLabel": "Royalty guarantee commitement due current and non current discounted value"
       }
      }
     },
     "localname": "RoyaltyGuaranteeCommitementAmountDueCurrentAndNonCurrentDiscountedValue",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_RoyaltyGuaranteesCommitmentsAmountNonCurrent": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Royalty guarantees commitments amount non current.",
        "label": "Royalty Guarantees Commitments Amount Non Current",
        "terseLabel": "Royalty guarantees commitments amount non current"
       }
      }
     },
     "localname": "RoyaltyGuaranteesCommitmentsAmountNonCurrent",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_RoyaltyObligationCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 24.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount of the short term portion of the guaranteed minimum royalty obligation related to Honeywell Agreement.",
        "label": "Royalty Obligation, Current",
        "terseLabel": "Current Liability\u2014Royalty Obligation"
       }
      }
     },
     "localname": "RoyaltyObligationCurrent",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_RoyaltyObligationDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Royalty Obligation Disclosure [Abstract]",
        "verboseLabel": "Royalty Obligation Disclosure [Abstract]"
       }
      }
     },
     "localname": "RoyaltyObligationDisclosureAbstract",
     "nsuri": "http://astro-med.com/20230131",
     "xbrltype": "stringItemType"
    },
    "alot_RoyaltyObligationNonCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 15.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount of the long term portion of the guaranteed minimum royalty obligation related to Honeywell Agreement.",
        "label": "Royalty Obligation Non Current",
        "verboseLabel": "Royalty Obligation, net of current portion"
       }
      }
     },
     "localname": "RoyaltyObligationNonCurrent",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_RoyaltyPaymentsDueAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Royalty payments due.",
        "label": "Royalty Payments Due [Axis]"
       }
      }
     },
     "localname": "RoyaltyPaymentsDueAxis",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_RoyaltyPaymentsDueDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Royalty payments due.",
        "label": "Royalty Payments Due [Domain]"
       }
      }
     },
     "localname": "RoyaltyPaymentsDueDomain",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_RoyaltyPaymentsDueInNextTwelveMonthsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Royalty payments due in next twelve months.",
        "label": "Royalty Payments Due In Next Twelve Months [Member]"
       }
      }
     },
     "localname": "RoyaltyPaymentsDueInNextTwelveMonthsMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_RoyaltyPaymentsDueYearFiveMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Royalty payments due year five.",
        "label": "Royalty Payments Due Year Five [Member]"
       }
      }
     },
     "localname": "RoyaltyPaymentsDueYearFiveMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_RoyaltyPaymentsDueYearFourMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Royalty payments due year four.",
        "label": "Royalty Payments Due Year Four [Member]"
       }
      }
     },
     "localname": "RoyaltyPaymentsDueYearFourMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_RoyaltyPaymentsDueYearThreeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Royalty payments due year three.",
        "label": "Royalty Payments Due Year Three [Member]"
       }
      }
     },
     "localname": "RoyaltyPaymentsDueYearThreeMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_RoyaltyPaymentsDueYearTwoMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Royalty payments due year two.",
        "label": "Royalty Payments Due Year Two [Member]"
       }
      }
     },
     "localname": "RoyaltyPaymentsDueYearTwoMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_RuggedInformationTechnologyEquipmentCorporationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rugged Information Technology Equipment Corporation [Member]",
        "label": "Rugged Information Technology Equipment Corporation [Member]",
        "terseLabel": "RITEC [Member]"
       }
      }
     },
     "localname": "RuggedInformationTechnologyEquipmentCorporationMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail",
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of balance sheet and other information related to operating leases.",
        "label": "Schedule Of Balance Sheet And Other Information Related To Operating Leases [Table Text Block]",
        "terseLabel": "Schedule Of Balance Sheet And Other Information Related To Operating Leases"
       }
      }
     },
     "localname": "ScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesTableTextBlock",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alot_SecondAmendmentCreditAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Second amendment credit agreement.",
        "label": "Second Amendment Credit Agreement [Member]",
        "terseLabel": "Second Amendment Credit Agreement [Member]"
       }
      }
     },
     "localname": "SecondAmendmentCreditAgreementMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_ServiceAndOtherMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Service and other.",
        "label": "Service And Other [Member]",
        "terseLabel": "Service and Other [Member]"
       }
      }
     },
     "localname": "ServiceAndOtherMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_SettlementOfContractClaim": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Settlement of contract claim and settlement of contract claim as a result of increased component costs.",
        "label": "Settlement Of Contract Claim",
        "terseLabel": "Contract with customer liability"
       }
      }
     },
     "localname": "SettlementOfContractClaim",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_SettlementofContractClaimRevenueRecognized": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Settlement of contract claim revenue recognized and definition Amount of revenue recognized as result of settlement of a contract claim related to additional component costs.",
        "label": "Settlement of Contract Claim Revenue Recognized",
        "terseLabel": "Revenue recognized"
       }
      }
     },
     "localname": "SettlementofContractClaimRevenueRecognized",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_StockDeliveredDuringPeriodSharesStockOptionsExercise": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of stock delivered by employers to satisfy the exercise price for stock options exercised and restricted stock vested.",
        "label": "Stock Delivered During Period Shares Stock Options Exercise",
        "terseLabel": "Company shares given to employees, shares"
       }
      }
     },
     "localname": "StockDeliveredDuringPeriodSharesStockOptionsExercise",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "alot_StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Dollar value of stock delivered by employers to satisfy the exercise price for stock options exercised and restricted stock vested.",
        "label": "Stock Delivered During Period Shares Stock Options Exercise, Amount",
        "terseLabel": "Company shares given to employees, value"
       }
      }
     },
     "localname": "StockDeliveredDuringPeriodSharesStockOptionsExerciseAmount",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_SummaryOfSignificantAccountingPoliciesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summary of significant accounting policies.",
        "label": "Summary Of Significant Accounting Policies [Line Items]",
        "terseLabel": "Summary Of Significant Accounting Policies [Line Items]"
       }
      }
     },
     "localname": "SummaryOfSignificantAccountingPoliciesLineItems",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_SummaryOfSignificantAccountingPoliciesTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summary Of Significant Accounting Policies [Table]",
        "label": "Summary Of Significant Accounting Policies [Table]",
        "terseLabel": "Summary Of Significant Accounting Policies [Table]"
       }
      }
     },
     "localname": "SummaryOfSignificantAccountingPoliciesTable",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "alot_SuppliesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Supplies.",
        "label": "Supplies [Member]",
        "terseLabel": "Supplies [Member]"
       }
      }
     },
     "localname": "SuppliesMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_TaxCreditsCarryForwardsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tax Credits Carry Forwards [Member]",
        "terseLabel": "Tax Credits Carry Forwards [Member]"
       }
      }
     },
     "localname": "TaxCreditsCarryForwardsMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_TermLoanDueAugustFourthTwoThousandAndTwentySevenMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term loan due august fourth two thousand and twenty seven.",
        "label": "Term Loan Due August Fourth Two Thousand and Twenty Seven [Member]",
        "terseLabel": "Term Loan Due August 4, 2027 [Member]"
       }
      }
     },
     "localname": "TermLoanDueAugustFourthTwoThousandAndTwentySevenMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term loan due september thirty two thousand and twenty five.",
        "label": "Term Loan Due September Thirty Two Thousand And Twenty Five [Member]",
        "terseLabel": "Term Loan Due September 30, 2025 [Member]"
       }
      }
     },
     "localname": "TermLoanDueSeptemberThirtyTwoThousandAndTwentyFiveMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_TermLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term loan.",
        "label": "Term Loan [Member]",
        "terseLabel": "Term Loan [Member]"
       }
      }
     },
     "localname": "TermLoanMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_TestAndMeasurementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Test and measurement.",
        "label": "Test And Measurement [Member]",
        "terseLabel": "T&amp;M [Member]"
       }
      }
     },
     "localname": "TestAndMeasurementMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_ThresholdQualifiedWagesPerEmployeePerCalendarQuarter": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Threshold qualified wages per employee per calendar quarter.",
        "label": "Threshold Qualified Wages Per Employee Per Calendar Quarter",
        "terseLabel": "Threshold qualified wages per employee per calendar quarter"
       }
      }
     },
     "localname": "ThresholdQualifiedWagesPerEmployeePerCalendarQuarter",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alot_TradeAccountsPayablesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trade Accounts Payables [Member]",
        "label": "Trade Accounts Payables [Member]",
        "terseLabel": "Trade Accounts Payables [Member]"
       }
      }
     },
     "localname": "TradeAccountsPayablesMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_TrojanlabelApSMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "TrojanLabel ApS.",
        "label": "Trojanlabel ApS [Member]",
        "terseLabel": "TrojanLabel ApS [Member]"
       }
      }
     },
     "localname": "TrojanlabelApSMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two thousand and twenty two employee stock purchase plan member.",
        "label": "Two Thousand And Twenty Two Employee Stock Purchase Plan [Member]",
        "terseLabel": "2022 Employee Stock Purchase Plan"
       }
      }
     },
     "localname": "TwoThousandAndTwentyTwoEmployeeStockPurchasePlanMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_TwoThousandEighteenEquityIncentivePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2018 Equity Incentive Plan.",
        "label": "Two Thousand Eighteen Equity Incentive Plan [Member]",
        "terseLabel": "2018 Equity Incentive Plan [Member]"
       }
      }
     },
     "localname": "TwoThousandEighteenEquityIncentivePlanMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_TwoThousandFifteenEquityIncentivePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two Thousand Fifteen Equity Incentive Plan [Member]",
        "label": "Two Thousand Fifteen Equity Incentive Plan [Member]",
        "terseLabel": "2015 Equity Incentive Plan [Member]"
       }
      }
     },
     "localname": "TwoThousandFifteenEquityIncentivePlanMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_TwoThousandSevenEquityIncentivePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two Thousand Seven Equity Incentive Plan [Member]",
        "label": "Two Thousand Seven Equity Incentive Plan [Member]",
        "terseLabel": "2007 Equity Incentive Plan [Member]"
       }
      }
     },
     "localname": "TwoThousandSevenEquityIncentivePlanMember",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "alot_UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unrealized gain loss on termination of interest rate cash flow hedges pre tax accumulated other comprehensive income loss.",
        "label": "Unrealized gain loss on termination of interest rate cash flow hedges pre tax accumulated other comprehensive income loss",
        "negatedLabel": "Cross-Currency Interest Rate Swap Termination"
       }
      }
     },
     "localname": "UnrealizedGainLossOnTerminationOfInterestRateCashFlowHedgesPreTaxAccumulatedOtherComprehensiveIncomeLoss",
     "nsuri": "http://astro-med.com/20230131",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "country_CA": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CANADA",
        "terseLabel": "Canada [Member]"
       }
      }
     },
     "localname": "CA",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail",
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "country_CN": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CHINA"
       }
      }
     },
     "localname": "CN",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED STATES",
        "terseLabel": "United States [Member]"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail",
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditorFirmId": {
     "auth_ref": [
      "r796",
      "r797",
      "r798"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "PCAOB issued Audit Firm Identifier",
        "label": "Auditor Firm ID",
        "terseLabel": "Auditor Firm ID"
       }
      }
     },
     "localname": "AuditorFirmId",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "nonemptySequenceNumberItemType"
    },
    "dei_AuditorLocation": {
     "auth_ref": [
      "r796",
      "r797",
      "r798"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location",
        "terseLabel": "Auditor Location"
       }
      }
     },
     "localname": "AuditorLocation",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_AuditorName": {
     "auth_ref": [
      "r796",
      "r797",
      "r798"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name",
        "terseLabel": "Auditor Name"
       }
      }
     },
     "localname": "AuditorName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cover page.",
        "label": "Cover [Abstract]",
        "verboseLabel": "Cover [Abstract]"
       }
      }
     },
     "localname": "CoverAbstract",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "xbrltype": "stringItemType"
    },
    "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r796",
      "r797",
      "r798"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "gYearItemType"
    },
    "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r799"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town",
        "verboseLabel": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r794"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r794"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r794"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r800"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r794"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r794"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r794"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r794"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [
      "r801"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_IcfrAuditorAttestationFlag": {
     "auth_ref": [
      "r796",
      "r797",
      "r798"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "localname": "IcfrAuditorAttestationFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r793"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r795"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "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/2022",
     "presentation": [
      "http://astro-med.com/role/CoverPage"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "srt_AsiaMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Continent of Asia.",
        "label": "Asia [Member]",
        "terseLabel": "Asia [Member]"
       }
      }
     },
     "localname": "AsiaMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail",
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ConsolidationItemsAxis": {
     "auth_ref": [
      "r297",
      "r343",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r361",
      "r365",
      "r420",
      "r421",
      "r422",
      "r423",
      "r425",
      "r426",
      "r428",
      "r430",
      "r431",
      "r742",
      "r743",
      "r744",
      "r745",
      "r746",
      "r747",
      "r748",
      "r749",
      "r750",
      "r848",
      "r849",
      "r977",
      "r978"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by components, eliminations, non-segment corporate-level activity and reconciling items used in consolidating a parent entity and its subsidiaries or its operating segments.",
        "label": "Consolidation Items [Axis]",
        "terseLabel": "Consolidation Items [Axis]"
       }
      }
     },
     "localname": "ConsolidationItemsAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ConsolidationItemsDomain": {
     "auth_ref": [
      "r297",
      "r343",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r361",
      "r365",
      "r420",
      "r421",
      "r422",
      "r423",
      "r425",
      "r426",
      "r428",
      "r430",
      "r431",
      "r742",
      "r743",
      "r744",
      "r745",
      "r746",
      "r747",
      "r748",
      "r749",
      "r750",
      "r848",
      "r849",
      "r977",
      "r978"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components, elimination, non-segment corporate-level activity and reconciling items used in consolidating a parent entity and its subsidiaries or its operating segments.",
        "label": "Consolidation Items [Domain]",
        "terseLabel": "Consolidation Items [Domain]"
       }
      }
     },
     "localname": "ConsolidationItemsDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_EuropeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Continent of Europe.",
        "label": "Europe [Member]",
        "terseLabel": "Europe [Member]"
       }
      }
     },
     "localname": "EuropeMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail",
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r371",
      "r772",
      "r852",
      "r974"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by name or description of a single external customer or a group of external customers.",
        "label": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail",
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r416",
      "r417",
      "r418",
      "r419",
      "r503",
      "r679",
      "r699",
      "r728",
      "r729",
      "r769",
      "r782",
      "r792",
      "r850",
      "r966",
      "r967",
      "r968",
      "r969",
      "r970",
      "r971"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Upper limit of the provided range.",
        "label": "Maximum [Member]",
        "terseLabel": "Maximum [Member]"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r416",
      "r417",
      "r418",
      "r419",
      "r503",
      "r679",
      "r699",
      "r728",
      "r729",
      "r769",
      "r782",
      "r792",
      "r850",
      "r966",
      "r967",
      "r968",
      "r969",
      "r970",
      "r971"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lower limit of the provided range.",
        "label": "Minimum [Member]",
        "terseLabel": "Minimum [Member]"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r371",
      "r772",
      "r852",
      "r974"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Single external customer or group of external customers.",
        "label": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail",
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r367",
      "r681",
      "r770",
      "r790",
      "r845",
      "r846",
      "r852",
      "r973"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by product and service, or group of similar products and similar services.",
        "label": "Product and Service [Axis]",
        "terseLabel": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r367",
      "r681",
      "r770",
      "r790",
      "r845",
      "r846",
      "r852",
      "r973"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Product or service, or a group of similar products or similar services.",
        "label": "Product and Service [Domain]",
        "terseLabel": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r416",
      "r417",
      "r418",
      "r419",
      "r496",
      "r503",
      "r533",
      "r534",
      "r535",
      "r678",
      "r679",
      "r699",
      "r728",
      "r729",
      "r769",
      "r782",
      "r792",
      "r844",
      "r850",
      "r967",
      "r968",
      "r969",
      "r970",
      "r971"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median.",
        "label": "Range [Axis]",
        "terseLabel": "Range [Axis]",
        "verboseLabel": "Range [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r416",
      "r417",
      "r418",
      "r419",
      "r496",
      "r503",
      "r533",
      "r534",
      "r535",
      "r678",
      "r679",
      "r699",
      "r728",
      "r729",
      "r769",
      "r782",
      "r792",
      "r844",
      "r850",
      "r967",
      "r968",
      "r969",
      "r970",
      "r971"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median.",
        "label": "Range [Domain]",
        "terseLabel": "Range [Domain]",
        "verboseLabel": "Range [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioUnspecifiedDomain": {
     "auth_ref": [
      "r320",
      "r504",
      "r803",
      "r829"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Scenario reported, distinguishing information from actual fact. Includes, but is not limited to, pro forma and forecast. Excludes actual facts.",
        "label": "Scenario [Domain]",
        "verboseLabel": "Scenario [Domain]"
       }
      }
     },
     "localname": "ScenarioUnspecifiedDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesAdditionalInformationDetail",
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock": {
     "auth_ref": [
      "r304",
      "r741"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Schedule of Valuation and Qualifying Accounts Disclosure [Text Block]",
        "terseLabel": "Schedule II - Valuation and Qualifying Accounts and Reserves"
       }
      }
     },
     "localname": "ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReserves"
     ],
     "xbrltype": "textBlockItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r368",
      "r369",
      "r719",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725",
      "r726",
      "r727",
      "r731",
      "r733",
      "r734",
      "r735",
      "r736",
      "r737",
      "r738",
      "r739",
      "r740",
      "r771",
      "r791",
      "r852"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Geographical area.",
        "label": "Geographical [Domain]",
        "terseLabel": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail",
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r368",
      "r369",
      "r713",
      "r719",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725",
      "r726",
      "r727",
      "r731",
      "r732",
      "r771",
      "r791",
      "r852"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by geographical components.",
        "label": "Geographical [Axis]",
        "terseLabel": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail",
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_StatementScenarioAxis": {
     "auth_ref": [
      "r320",
      "r504",
      "r803",
      "r804",
      "r829"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by scenario reported, distinguishing information from actual fact. Includes, but is not limited to, pro forma and forecast. Excludes actual facts.",
        "label": "Scenario [Axis]",
        "verboseLabel": "Scenario [Axis]"
       }
      }
     },
     "localname": "StatementScenarioAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesAdditionalInformationDetail",
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualAxis": {
     "auth_ref": [
      "r835",
      "r963"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by title of individual or nature of relationship to individual or group of individuals.",
        "label": "Title of Individual [Axis]",
        "terseLabel": "Title of Individual [Axis]"
       }
      }
     },
     "localname": "TitleOfIndividualAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of individual, or nature of relationship to individual or group of individuals.",
        "label": "Title of Individual [Domain]",
        "terseLabel": "Relationship to Entity [Domain]"
       }
      }
     },
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ValuationAndQualifyingAccountsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SEC Schedule, 12-09, Valuation and Qualifying Accounts [Abstract]"
       }
      }
     },
     "localname": "ValuationAndQualifyingAccountsAbstract",
     "nsuri": "http://fasb.org/srt/2022",
     "xbrltype": "stringItemType"
    },
    "srt_ValuationAndQualifyingAccountsDisclosureLineItems": {
     "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": "SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Line Items]",
        "terseLabel": "SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Line Items]"
       }
      }
     },
     "localname": "ValuationAndQualifyingAccountsDisclosureLineItems",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ValuationAndQualifyingAccountsDisclosureTable": {
     "auth_ref": [
      "r298",
      "r299",
      "r300",
      "r302",
      "r303",
      "r741"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Table]",
        "terseLabel": "SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Table]"
       }
      }
     },
     "localname": "ValuationAndQualifyingAccountsDisclosureTable",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "stpr_DE": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "DELAWARE"
       }
      }
     },
     "localname": "DE",
     "nsuri": "http://xbrl.sec.gov/stpr/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "auth_ref": [
      "r17"
     ],
     "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]",
        "terseLabel": "Accrued Expenses"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccruedExpenses"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r16",
      "r789"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 21.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, Current",
        "terseLabel": "Accounts Payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r373",
      "r374"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 3.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, Current",
        "verboseLabel": "Accounts Receivable, net of reserves of $731 in 2023 and $826 in 2022"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedIncomeTaxesCurrent": {
     "auth_ref": [
      "r2",
      "r213",
      "r226"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 27.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.",
        "label": "Accrued Income Taxes, Current",
        "terseLabel": "Income Taxes Payable"
       }
      }
     },
     "localname": "AccruedIncomeTaxesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r21"
     ],
     "calculation": {
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 23.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Liabilities, Current",
        "terseLabel": "Other Accrued Expenses",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail",
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedProfessionalFeesCurrent": {
     "auth_ref": [
      "r21"
     ],
     "calculation": {
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail": {
       "order": 2.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 through that date and payable for professional fees, such as for legal and accounting services received. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Professional Fees, Current",
        "terseLabel": "Professional Fees"
       }
      }
     },
     "localname": "AccruedProfessionalFeesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedSalesCommissionCurrent": {
     "auth_ref": [
      "r21",
      "r753"
     ],
     "calculation": {
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail": {
       "order": 3.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 through that date and payable for sales commissions. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Sales Commission, Current",
        "terseLabel": "Dealer Commissions"
       }
      }
     },
     "localname": "AccruedSalesCommissionCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r105",
      "r252"
     ],
     "calculation": {
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail": {
       "order": 6.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": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "negatedLabel": "Accumulated Depreciation"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember": {
     "auth_ref": [
      "r269",
      "r278",
      "r279",
      "r596",
      "r755",
      "r813"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated other comprehensive income (loss) from gain (loss) of derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness, attributable to parent.",
        "label": "Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member]",
        "terseLabel": "Net Unrealized Gain/(Loss) on Cash Flow Hedges [Member]"
       }
      }
     },
     "localname": "AccumulatedGainLossNetCashFlowHedgeParentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r32",
      "r33",
      "r34",
      "r260",
      "r694",
      "r707",
      "r711"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 36.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.",
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax",
        "terseLabel": "Accumulated Other Comprehensive Loss, net of tax"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r31",
      "r34",
      "r176",
      "r673",
      "r702",
      "r703",
      "r813",
      "r814",
      "r815",
      "r826",
      "r827",
      "r828"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Member]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail",
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccumulatedTranslationAdjustmentMember": {
     "auth_ref": [
      "r30",
      "r34",
      "r176",
      "r278",
      "r279",
      "r638",
      "r639",
      "r640",
      "r641",
      "r643",
      "r813"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated other comprehensive income (loss) resulting from foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to the parent.",
        "label": "Accumulated Foreign Currency Adjustment Attributable to Parent [Member]",
        "terseLabel": "Foreign Currency Translation Adjustments [Member]"
       }
      }
     },
     "localname": "AccumulatedTranslationAdjustmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems": {
     "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": "Acquired Finite-Lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "auth_ref": [
      "r94"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Acquired Finite-lived Intangible Assets, Weighted Average Useful Life",
        "verboseLabel": "Useful Life (Years)"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_AcquiredIndefiniteLivedIntangibleAssetsLineItems": {
     "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": "Acquired Indefinite-Lived Intangible Assets [Line Items]",
        "terseLabel": "Acquired Finite-Lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "AcquiredIndefiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r8"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 33.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, Common Stock",
        "terseLabel": "Additional\u00a0Paid-in\u00a0Capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r541",
      "r542",
      "r543",
      "r826",
      "r827",
      "r828",
      "r953"
     ],
     "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]",
        "terseLabel": "Additional Paid-in Capital [Member]"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": {
     "auth_ref": [
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r308",
      "r309",
      "r310",
      "r311",
      "r320",
      "r376",
      "r377",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r541",
      "r542",
      "r543",
      "r571",
      "r572",
      "r573",
      "r574",
      "r587",
      "r588",
      "r589",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616",
      "r617",
      "r624",
      "r625",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r646",
      "r647",
      "r651",
      "r652",
      "r653",
      "r654",
      "r668",
      "r669",
      "r670",
      "r671",
      "r672",
      "r673",
      "r683",
      "r684",
      "r685",
      "r700",
      "r701",
      "r702",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r710",
      "r711"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by amendment to accounting standards.",
        "label": "Adjustments for New Accounting Pronouncements [Axis]",
        "terseLabel": "Adjustments for New Accounting Pronouncements [Axis]",
        "verboseLabel": "Adjustments for New Accounting Pronouncements [Axis]"
       }
      }
     },
     "localname": "AdjustmentsForNewAccountingPronouncementsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for option under share-based payment arrangement.",
        "label": "Adjustments to Additional Paid in Capital, Share-based Compensation, Stock Options, Requisite Service Period Recognition",
        "terseLabel": "Share-Based Compensation"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]",
        "verboseLabel": "Adjustments to Reconcile Net Income to Net Cash (Used) Provided By Operating Activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdvertisingCostsPolicyTextBlock": {
     "auth_ref": [
      "r546"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for advertising cost.",
        "label": "Advertising Costs, Policy [Policy Text Block]",
        "terseLabel": "Advertising"
       }
      }
     },
     "localname": "AdvertisingCostsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AdvertisingExpense": {
     "auth_ref": [
      "r547"
     ],
     "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": "Advertising Expense",
        "terseLabel": "Advertising expense"
       }
      }
     },
     "localname": "AdvertisingExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForCreditLossMember": {
     "auth_ref": [
      "r821",
      "r822",
      "r823",
      "r824",
      "r825"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Allowance for credit loss from right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.",
        "label": "SEC Schedule, 12-09, Allowance, Credit Loss [Member]",
        "terseLabel": "Allowance for Doubtful Accounts [Member]"
       }
      }
     },
     "localname": "AllowanceForCreditLossMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r261",
      "r375",
      "r385"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Allowance for Doubtful Accounts Receivable, Current",
        "terseLabel": "Accounts Receivable, Reserves"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfFinancingCosts": {
     "auth_ref": [
      "r41",
      "r455",
      "r649",
      "r816"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 15.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense attributable to debt issuance costs.",
        "label": "Amortization of Debt Issuance Costs",
        "terseLabel": "Amortization of Debt Issuance Costs"
       }
      }
     },
     "localname": "AmortizationOfFinancingCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r63",
      "r92",
      "r98"
     ],
     "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": "Amortization of Intangible Assets",
        "terseLabel": "Amortization expense"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r329"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.",
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "terseLabel": "Number of common equivalent shares"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_AreaOfLand": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area of land held.",
        "label": "Area of Land",
        "terseLabel": "Area of Land"
       }
      }
     },
     "localname": "AreaOfLand",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "areaItemType"
    },
    "us-gaap_ArrangementsAndNonarrangementTransactionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations.",
        "label": "Arrangements and Non-arrangement Transactions [Domain]",
        "terseLabel": "Arrangements and Non-arrangement Transactions [Domain]",
        "verboseLabel": "Arrangements and Non-arrangement Transactions [Domain]"
       }
      }
     },
     "localname": "ArrangementsAndNonarrangementTransactionsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail",
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail",
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r211",
      "r225",
      "r255",
      "r292",
      "r351",
      "r357",
      "r363",
      "r378",
      "r420",
      "r421",
      "r423",
      "r424",
      "r425",
      "r427",
      "r429",
      "r431",
      "r432",
      "r592",
      "r597",
      "r623",
      "r789",
      "r848",
      "r849",
      "r964"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "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": "Assets",
        "terseLabel": "Assets",
        "totalLabel": "TOTAL ASSETS"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets [Abstract]",
        "terseLabel": "ASSETS"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r247",
      "r264",
      "r292",
      "r378",
      "r420",
      "r421",
      "r423",
      "r424",
      "r425",
      "r427",
      "r429",
      "r431",
      "r432",
      "r592",
      "r597",
      "r623",
      "r789",
      "r848",
      "r849",
      "r964"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 1.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": "Assets, Current",
        "totalLabel": "Total Current Assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "terseLabel": "CURRENT ASSETS"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense": {
     "auth_ref": [
      "r235",
      "r236"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Liability as of the balance sheet date for the estimated ultimate cost of settling claims and claim adjustment expense relating to insured events that have occurred on or before the balance sheet date for those liabilities owed to another party as a result of assuming another insurer's primary obligation.",
        "label": "Assumed Liability for Unpaid Claims and Claims Adjustment Expense",
        "verboseLabel": "Liability for self-insured claims"
       }
      }
     },
     "localname": "AssumedLiabilityForUnpaidClaimsAndClaimsAdjustmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r508",
      "r509",
      "r510",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]",
        "terseLabel": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location on balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Axis]",
        "terseLabel": "Balance Sheet Location [Axis]"
       }
      }
     },
     "localname": "BalanceSheetLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail",
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail",
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationDomain": {
     "auth_ref": [
      "r182",
      "r185"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in the balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Domain]",
        "terseLabel": "Balance Sheet Location [Domain]"
       }
      }
     },
     "localname": "BalanceSheetLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail",
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail",
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "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]",
        "terseLabel": "Basis of Presentation"
       }
      }
     },
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r69"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the basis of presentation and significant accounting policies concepts. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS). Accounting policies describe all significant accounting policies of the reporting entity.",
        "label": "Basis of Presentation and Significant Accounting Policies [Text Block]",
        "terseLabel": "Summary of Significant Accounting Policies"
       }
      }
     },
     "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BuildingsAndImprovementsGross": {
     "auth_ref": [
      "r104"
     ],
     "calculation": {
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail": {
       "order": 3.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 and Improvements, Gross",
        "terseLabel": "Buildings and Leasehold Improvements"
       }
      }
     },
     "localname": "BuildingsAndImprovementsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "auth_ref": [
      "r585",
      "r780",
      "r781"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.",
        "label": "Business Acquisition, Acquiree [Domain]",
        "terseLabel": "Business Acquisition, Acquiree [Domain]"
       }
      }
     },
     "localname": "BusinessAcquisitionAcquireeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail",
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail",
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r163",
      "r164",
      "r585",
      "r780",
      "r781"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business combination or series of individually immaterial business combinations.",
        "label": "Business Acquisition [Axis]",
        "terseLabel": "Business Acquisition [Axis]"
       }
      }
     },
     "localname": "BusinessAcquisitionAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfRevenueAndEarningsBeforeTaxesDetail",
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail",
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionLineItems": {
     "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": "Business Acquisition [Line Items]",
        "terseLabel": "Business Acquisition [Line Items]"
       }
      }
     },
     "localname": "BusinessAcquisitionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": {
     "auth_ref": [
      "r162"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination.",
        "label": "Business Acquisition, Percentage of Voting Interests Acquired",
        "terseLabel": "Payments to Acquire Businesses, Gross"
       }
      }
     },
     "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": {
     "auth_ref": [
      "r948",
      "r949"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate.",
        "label": "Business Acquisition, Pro Forma Information [Table Text Block]",
        "terseLabel": "Summary of Revenue and Earnings Before Taxes"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaInformationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationAcquisitionRelatedCosts": {
     "auth_ref": [
      "r161"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.",
        "label": "Business Combination, Acquisition Related Costs",
        "verboseLabel": "Business Combination, Acquisition Related Costs"
       }
      }
     },
     "localname": "BusinessCombinationAcquisitionRelatedCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "auth_ref": [
      "r171",
      "r172",
      "r173"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 29.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.",
        "label": "Business Combination, Consideration Transferred",
        "negatedLabel": "Cash Paid for Astro Machine Acquisition, net of cash acquired",
        "terseLabel": "Business Combination, Consideration Transferred"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferred1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "auth_ref": [
      "r174",
      "r586"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).",
        "label": "Business Combination Disclosure [Text Block]",
        "terseLabel": "Acquisitions"
       }
      }
     },
     "localname": "BusinessCombinationDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/Acquisitions"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "auth_ref": [
      "r166"
     ],
     "calculation": {
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "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, acquired at the acquisition date. 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.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents",
        "terseLabel": "Cash"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": {
     "auth_ref": [
      "r166"
     ],
     "calculation": {
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables",
        "terseLabel": "Accounts Receivable"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities": {
     "auth_ref": [
      "r166"
     ],
     "calculation": {
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities",
        "negatedLabel": "Accounts Payable and Other Current Liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": {
     "auth_ref": [
      "r166"
     ],
     "calculation": {
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill",
        "verboseLabel": "Identifiable Intangible Assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": {
     "auth_ref": [
      "r165",
      "r166"
     ],
     "calculation": {
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of inventory recognized as of the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory",
        "terseLabel": "Inventory"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": {
     "auth_ref": [
      "r165",
      "r166"
     ],
     "calculation": {
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment",
        "terseLabel": "Property, Plant and Equipment"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r166"
     ],
     "calculation": {
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net",
        "totalLabel": "Total Purchase Price"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combinations [Abstract]"
       }
      }
     },
     "localname": "BusinessCombinationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationsPolicy": {
     "auth_ref": [
      "r160"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.",
        "label": "Business Combinations Policy [Policy Text Block]",
        "verboseLabel": "Business Combinations"
       }
      }
     },
     "localname": "BusinessCombinationsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CapitalizedComputerSoftwareGross": {
     "auth_ref": [
      "r976"
     ],
     "calculation": {
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail": {
       "order": 5.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": "Capitalized Computer Software, Gross",
        "terseLabel": "Computer Equipment and Software"
       }
      }
     },
     "localname": "CapitalizedComputerSoftwareGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedComputerSoftwareImpairments1": {
     "auth_ref": [
      "r237",
      "r239"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of impairment loss from capitalized computer software costs.",
        "label": "Capitalized Computer Software, Impairments"
       }
      }
     },
     "localname": "CapitalizedComputerSoftwareImpairments1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedContractCostAmortization": {
     "auth_ref": [
      "r390"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense for asset recognized from cost incurred to obtain or fulfill contract with customer.",
        "label": "Capitalized Contract Cost, Amortization",
        "terseLabel": "Amortization of incremental direct costs"
       }
      }
     },
     "localname": "CapitalizedContractCostAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedContractCostNet": {
     "auth_ref": [
      "r389"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer.",
        "label": "Capitalized Contract Cost, Net",
        "verboseLabel": "Additional contract costs"
       }
      }
     },
     "localname": "CapitalizedContractCostNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedContractCostNetCurrent": {
     "auth_ref": [
      "r389"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer; classified as current.",
        "label": "Capitalized Contract Cost, Net, Current",
        "terseLabel": "Deferred incremental direct contract costs reported in other current assets"
       }
      }
     },
     "localname": "CapitalizedContractCostNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CarryingReportedAmountFairValueDisclosureMember": {
     "auth_ref": [
      "r200",
      "r201"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measured as reported on the statement of financial position (balance sheet).",
        "label": "Reported Value Measurement [Member]",
        "verboseLabel": "Carrying Value [Member]"
       }
      }
     },
     "localname": "CarryingReportedAmountFairValueDisclosureMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r65",
      "r250",
      "r751"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "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, at Carrying Value",
        "terseLabel": "Cash and Cash Equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r66"
     ],
     "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]",
        "terseLabel": "Cash and Cash Equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r59",
      "r65",
      "r68"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for 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": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents",
        "periodEndLabel": "Cash and Cash Equivalents, End of Year",
        "periodStartLabel": "Cash and Cash Equivalents, Beginning of Year"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r59",
      "r205"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "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": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Net Increase (Decrease) in Cash and Cash Equivalents"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashFlowHedgingMember": {
     "auth_ref": [
      "r179"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Hedge of the exposure to variability in the cash flows of a recognized asset or liability, or of a forecasted transaction, that is attributable to a particular risk.",
        "label": "Cash Flow Hedging [Member]",
        "verboseLabel": "Cash Flow Hedging [Member]"
       }
      }
     },
     "localname": "CashFlowHedgingMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ChangeInAccountingEstimateByTypeAxis": {
     "auth_ref": [
      "r72",
      "r315"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of change in accounting estimate.",
        "label": "Change in Accounting Estimate by Type [Axis]"
       }
      }
     },
     "localname": "ChangeInAccountingEstimateByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail",
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ChangeInAccountingEstimateTypeDomain": {
     "auth_ref": [
      "r72",
      "r315"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the accounting estimate that was changed that had the effect of adjusting the carrying amount of an existing asset or liability, or that will alter the subsequent accounting for existing or future assets or liabilities.",
        "label": "Change in Accounting Estimate, Type [Domain]"
       }
      }
     },
     "localname": "ChangeInAccountingEstimateTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail",
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A change from one acceptable accounting method to another based upon a revision in estimated future benefits or obligations.",
        "label": "Change in Accounting Method Accounted for as Change in Estimate [Member]",
        "terseLabel": "Change in Accounting Method Accounted for as Change in Estimate [Member]"
       }
      }
     },
     "localname": "ChangeInAccountingMethodAccountedForAsChangeInEstimateMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [
      "r257",
      "r258",
      "r259",
      "r292",
      "r323",
      "r324",
      "r326",
      "r328",
      "r333",
      "r334",
      "r378",
      "r420",
      "r423",
      "r424",
      "r425",
      "r431",
      "r432",
      "r463",
      "r464",
      "r467",
      "r471",
      "r478",
      "r623",
      "r730",
      "r802",
      "r817",
      "r830"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock.",
        "label": "Class of Stock [Domain]",
        "verboseLabel": "Class of Stock [Domain]"
       }
      }
     },
     "localname": "ClassOfStockDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesLeaseCostInformationDetail",
      "http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail",
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail",
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ClassOfStockLineItems": {
     "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": "Class of Stock [Line Items]",
        "terseLabel": "Class of Stock [Line Items]"
       }
      }
     },
     "localname": "ClassOfStockLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r26",
      "r217",
      "r232"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.",
        "label": "Commitments and Contingencies",
        "terseLabel": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r110",
      "r414",
      "r415",
      "r715",
      "r847"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "terseLabel": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CommitmentsAndContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockDividendsPerShareCashPaid": {
     "auth_ref": [
      "r131"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate dividends paid during the period for each share of common stock outstanding.",
        "label": "Common Stock, Dividends, Per Share, Cash Paid",
        "terseLabel": "Cash dividend per share"
       }
      }
     },
     "localname": "CommonStockDividendsPerShareCashPaid",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquityParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r826",
      "r827",
      "r953"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]",
        "terseLabel": "Common Stock [Member]"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r7"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share",
        "terseLabel": "Common Stock, Par Value"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r7"
     ],
     "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",
        "terseLabel": "Common Stock, Shares Authorized"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r7"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.",
        "label": "Common Stock, Shares, Issued",
        "terseLabel": "Common Stock, Shares Issued"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r7",
      "r789"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 32.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, Value, Issued",
        "terseLabel": "Common Stock"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CompensationAndEmployeeBenefitPlansTextBlock": {
     "auth_ref": [
      "r135",
      "r136",
      "r137",
      "r150"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for an entity's employee compensation and benefit plans, including, but not limited to, postemployment and postretirement benefit plans, defined benefit pension plans, defined contribution plans, non-qualified and supplemental benefit plans, deferred compensation, share-based compensation, life insurance, severance, health care, unemployment and other benefit plans.",
        "label": "Compensation and Employee Benefit Plans [Text Block]",
        "terseLabel": "Employee Benefit Plans"
       }
      }
     },
     "localname": "CompensationAndEmployeeBenefitPlansTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/EmployeeBenefitPlans"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ComponentsOfDeferredTaxAssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Components of Deferred Tax Assets [Abstract]",
        "terseLabel": "Deferred Tax Assets:"
       }
      }
     },
     "localname": "ComponentsOfDeferredTaxAssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Components of Deferred Tax Assets and Liabilities [Abstract]",
        "terseLabel": "Deferred taxes are reflected in the consolidated balance sheet as follows:"
       }
      }
     },
     "localname": "ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Components of Deferred Tax Liabilities [Abstract]",
        "terseLabel": "Deferred Tax Liabilities:"
       }
      }
     },
     "localname": "ComponentsOfDeferredTaxLiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r35",
      "r273",
      "r275",
      "r282",
      "r690",
      "r696"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "totalLabel": "Comprehensive Income"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNoteTextBlock": {
     "auth_ref": [
      "r51",
      "r281",
      "r689",
      "r695"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for comprehensive income, which includes, but is not limited to, 1) the amount of income tax expense or benefit allocated to each component of other comprehensive income, including reclassification adjustments, 2) the reclassification adjustments for each classification of other comprehensive income and 3) the ending accumulated balances for each component of comprehensive income.",
        "label": "Comprehensive Income (Loss) Note [Text Block]",
        "terseLabel": "Accumulated Other Comprehensive Loss"
       }
      }
     },
     "localname": "ComprehensiveIncomeNoteTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLoss"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r75",
      "r76",
      "r202",
      "r203",
      "r371",
      "r714"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.",
        "label": "Concentration Risk Benchmark [Domain]",
        "terseLabel": "Concentration Risk Benchmark [Domain]",
        "verboseLabel": "Concentration Risk Benchmark [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r75",
      "r76",
      "r202",
      "r203",
      "r371",
      "r712",
      "r714"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]",
        "terseLabel": "Concentration Risk Benchmark [Axis]",
        "verboseLabel": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r75",
      "r76",
      "r202",
      "r203",
      "r371",
      "r714",
      "r975"
     ],
     "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]",
        "terseLabel": "Concentration Risk Type [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskDisclosureTextBlock": {
     "auth_ref": [
      "r81"
     ],
     "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]",
        "terseLabel": "Concentration of Risk"
       }
      }
     },
     "localname": "ConcentrationRiskDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRisk"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskLineItems": {
     "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": "Concentration Risk [Line Items]",
        "terseLabel": "Concentration Risk [Line Items]"
       }
      }
     },
     "localname": "ConcentrationRiskLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r75",
      "r76",
      "r202",
      "r203",
      "r371"
     ],
     "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": "Concentration Risk, Percentage",
        "terseLabel": "Concentration Risk, Percentage"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTable": {
     "auth_ref": [
      "r73",
      "r75",
      "r76",
      "r77",
      "r202",
      "r204",
      "r714"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.",
        "label": "Concentration Risk [Table]",
        "terseLabel": "Concentration Risk [Table]"
       }
      }
     },
     "localname": "ConcentrationRiskTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r75",
      "r76",
      "r202",
      "r203",
      "r371",
      "r714"
     ],
     "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]",
        "terseLabel": "Concentration Risk Type [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "auth_ref": [
      "r175",
      "r756"
     ],
     "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]",
        "terseLabel": "Principles of Consolidation"
       }
      }
     },
     "localname": "ConsolidationPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerAssetNet": {
     "auth_ref": [
      "r480",
      "r482",
      "r493"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.",
        "label": "Contract with Customer, Asset, Net",
        "terseLabel": "Contract assets balance"
       }
      }
     },
     "localname": "ContractWithCustomerAssetNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "auth_ref": [
      "r480",
      "r481",
      "r493"
     ],
     "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": "Contract with Customer, Liability, Current",
        "terseLabel": "Contract liabilities and extended warranties"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CorporateNonSegmentMember": {
     "auth_ref": [
      "r87",
      "r356",
      "r357",
      "r358",
      "r359",
      "r365",
      "r834"
     ],
     "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]",
        "terseLabel": "Corporate Expenses [Member]"
       }
      }
     },
     "localname": "CorporateNonSegmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CostOfGoodsTotalMember": {
     "auth_ref": [
      "r832"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cost of product sold and service rendered, when it serves as benchmark in concentration of risk calculation.",
        "label": "Cost of Goods, Total [Member]",
        "terseLabel": "Purchases [Member]"
       }
      }
     },
     "localname": "CostOfGoodsTotalMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CostOfRevenue": {
     "auth_ref": [
      "r44",
      "r292",
      "r378",
      "r420",
      "r421",
      "r423",
      "r424",
      "r425",
      "r427",
      "r429",
      "r431",
      "r432",
      "r623",
      "r848"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 6.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period.",
        "label": "Cost of Revenue",
        "terseLabel": "Cost of Revenue"
       }
      }
     },
     "localname": "CostOfRevenue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing cost of sales.",
        "label": "Cost of Sales [Member]",
        "terseLabel": "Cost of Sales [Member]"
       }
      }
     },
     "localname": "CostOfSalesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CreditFacilityAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.",
        "label": "Credit Facility [Axis]",
        "terseLabel": "Credit Facility [Axis]",
        "verboseLabel": "Credit Facility [Axis]"
       }
      }
     },
     "localname": "CreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail",
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CreditFacilityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.",
        "label": "Credit Facility [Domain]",
        "terseLabel": "Credit Facility [Domain]",
        "verboseLabel": "Credit Facility [Domain]"
       }
      }
     },
     "localname": "CreditFacilityDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail",
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CrossCurrencyInterestRateContractMember": {
     "auth_ref": [
      "r875",
      "r951"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Derivative instrument whose primary underlying risk is tied to interest rates and foreign exchange rates.",
        "label": "Cross Currency Interest Rate Contract [Member]",
        "terseLabel": "Cross Currency Interest Rate Contract [Member]"
       }
      }
     },
     "localname": "CrossCurrencyInterestRateContractMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail",
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "auth_ref": [
      "r820",
      "r945",
      "r947"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Current Federal Tax Expense (Benefit)",
        "terseLabel": "Federal"
       }
      }
     },
     "localname": "CurrentFederalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentForeignTaxExpenseBenefit": {
     "auth_ref": [
      "r820",
      "r945"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Current Foreign Tax Expense (Benefit)",
        "terseLabel": "Foreign"
       }
      }
     },
     "localname": "CurrentForeignTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r159",
      "r568",
      "r578",
      "r820"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail": {
       "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 Income Tax Expense (Benefit)",
        "totalLabel": "Current Income Tax Expense"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Income Tax Expense (Benefit), Continuing Operations [Abstract]",
        "terseLabel": "Current:"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r820",
      "r945",
      "r947"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Current State and Local Tax Expense (Benefit)",
        "terseLabel": "State"
       }
      }
     },
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r74",
      "r371"
     ],
     "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]",
        "terseLabel": "Customer Concentration Risk [Member]"
       }
      }
     },
     "localname": "CustomerConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerContractsMember": {
     "auth_ref": [
      "r170"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Entity's established relationships with its customers through contracts.",
        "label": "Customer Contracts [Member]",
        "terseLabel": "Customer Contract Relationships [Member]",
        "verboseLabel": "Customer Contracts [Member]"
       }
      }
     },
     "localname": "CustomerContractsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail",
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerRelatedIntangibleAssetsMember": {
     "auth_ref": [
      "r168"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customer-related asset, including, but not limited to, customer lists, and noncontractual customer relationships.",
        "label": "Customer-Related Intangible Assets [Member]",
        "terseLabel": "Customer Contract Relationships [Member]"
       }
      }
     },
     "localname": "CustomerRelatedIntangibleAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerRelationshipsMember": {
     "auth_ref": [
      "r170"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.",
        "label": "Customer Relationships [Member]"
       }
      }
     },
     "localname": "CustomerRelationshipsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]",
        "verboseLabel": "Debt Disclosure [Abstract]"
       }
      }
     },
     "localname": "DebtDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r120",
      "r290",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r449",
      "r456",
      "r457",
      "r459"
     ],
     "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]",
        "terseLabel": "Credit Agreement and Long-Term Debt"
       }
      }
     },
     "localname": "DebtDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebt"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r1",
      "r2",
      "r3",
      "r212",
      "r215",
      "r224",
      "r297",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r439",
      "r445",
      "r446",
      "r447",
      "r448",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r455",
      "r650",
      "r764",
      "r765",
      "r766",
      "r767",
      "r768",
      "r818"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.",
        "label": "Debt Instrument [Axis]",
        "terseLabel": "Debt Instrument [Axis]",
        "verboseLabel": "Debt Instrument [Axis]"
       }
      }
     },
     "localname": "DebtInstrumentAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "definitionGuidance": "Interest rate",
        "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.",
        "label": "Debt Instrument, Basis Spread on Variable Rate"
       }
      }
     },
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentCarryingAmount": {
     "auth_ref": [
      "r3",
      "r215",
      "r224",
      "r460"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.",
        "label": "Long-term Debt, Gross",
        "terseLabel": "USD Term Loan"
       }
      }
     },
     "localname": "DebtInstrumentCarryingAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentDecreaseForgiveness": {
     "auth_ref": [
      "r818"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Decrease for amounts of indebtedness forgiven by the holder of the debt instrument.",
        "label": "Debt Instrument, Decrease, Forgiveness",
        "terseLabel": "Amount of PPP loan forgiven"
       }
      }
     },
     "localname": "DebtInstrumentDecreaseForgiveness",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "auth_ref": [
      "r207",
      "r209",
      "r433",
      "r650",
      "r765",
      "r766"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face (par) amount of debt instrument at time of issuance.",
        "label": "Debt Instrument, Face Amount",
        "terseLabel": "Principal amount of debt",
        "verboseLabel": "Debt instrument face amount"
       }
      }
     },
     "localname": "DebtInstrumentFaceAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentInterestRateBasisForEffectiveRate": {
     "auth_ref": [
      "r23",
      "r207"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of any adjustments made to the stated rate to determine the effective rate.",
        "label": "Debt Instrument, Interest Rate, Basis for Effective Rate",
        "verboseLabel": "Variable interest rate"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateBasisForEffectiveRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r23",
      "r434"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "verboseLabel": "Loan, interest rate"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentLineItems": {
     "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": "Debt Instrument [Line Items]",
        "terseLabel": "Debt Instrument [Line Items]"
       }
      }
     },
     "localname": "DebtInstrumentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentMaturityDate": {
     "auth_ref": [
      "r265",
      "r764",
      "r956"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format.",
        "label": "Debt Instrument, Maturity Date",
        "verboseLabel": "Loan, maturity date"
       }
      }
     },
     "localname": "DebtInstrumentMaturityDate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail"
     ],
     "xbrltype": "dateItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r25",
      "r297",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r439",
      "r445",
      "r446",
      "r447",
      "r448",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r455",
      "r650",
      "r764",
      "r765",
      "r766",
      "r767",
      "r768",
      "r818"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.",
        "label": "Debt Instrument, Name [Domain]",
        "terseLabel": "Debt Instrument, Name [Domain]",
        "verboseLabel": "Debt Instrument, Name [Domain]"
       }
      }
     },
     "localname": "DebtInstrumentNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentPaymentTerms": {
     "auth_ref": [
      "r24",
      "r221"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of the payment terms of the debt instrument (for example, whether periodic payments include principal and frequency of payments) and discussion about any contingencies associated with the payment.",
        "label": "Debt Instrument, Payment Terms",
        "verboseLabel": "Loan, payment terms"
       }
      }
     },
     "localname": "DebtInstrumentPaymentTerms",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentPeriodicPaymentPrincipal": {
     "auth_ref": [
      "r25"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the required periodic payments applied to principal.",
        "label": "Debt Instrument, Periodic Payment, Principal",
        "verboseLabel": "Debt Instrument, principal Periodic payment"
       }
      }
     },
     "localname": "DebtInstrumentPeriodicPaymentPrincipal",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentTable": {
     "auth_ref": [
      "r25",
      "r125",
      "r128",
      "r129",
      "r130",
      "r206",
      "r207",
      "r209",
      "r222",
      "r297",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r439",
      "r445",
      "r446",
      "r447",
      "r448",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r455",
      "r458",
      "r650",
      "r764",
      "r765",
      "r766",
      "r767",
      "r768",
      "r818"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table or schedule providing information pertaining to long-term debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.",
        "label": "Schedule of Long-term Debt Instruments [Table]",
        "terseLabel": "Schedule of Long-term Debt Instruments [Table]"
       }
      }
     },
     "localname": "DebtInstrumentTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtLongtermAndShorttermCombinedAmount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the aggregate of total long-term debt, including current maturities and short-term debt.",
        "label": "Debt, Long-term and Short-term, Combined Amount",
        "terseLabel": "Long-Term Debt and Related Current Maturities"
       }
      }
     },
     "localname": "DebtLongtermAndShorttermCombinedAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r820",
      "r946",
      "r947"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Deferred Federal Income Tax Expense (Benefit)",
        "terseLabel": "Federal"
       }
      }
     },
     "localname": "DeferredFederalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFinanceCostsNet": {
     "auth_ref": [
      "r208",
      "r851"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.",
        "label": "Debt Issuance Costs, Net",
        "negatedLabel": "Debt Issuance Costs, net of accumulated amortization"
       }
      }
     },
     "localname": "DeferredFinanceCostsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredForeignIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r159",
      "r820",
      "r946"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail": {
       "order": 8.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred Foreign Income Tax Expense (Benefit)",
        "terseLabel": "Foreign"
       }
      }
     },
     "localname": "DeferredForeignIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "auth_ref": [
      "r551",
      "r552"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 10.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.",
        "label": "Deferred Income Tax Assets, Net",
        "terseLabel": "Deferred Tax Assets, net"
       }
      }
     },
     "localname": "DeferredIncomeTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r63",
      "r159",
      "r569",
      "r577",
      "r578",
      "r820"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail": {
       "order": 5.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 Tax Expense (Benefit)",
        "totalLabel": "Deferred Income Tax Expense Total"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]",
        "terseLabel": "Deferred:"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "auth_ref": [
      "r4",
      "r5",
      "r214",
      "r223",
      "r563"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 18.0,
       "parentTag": "alot_DeferredTaxAssetsLiabilitiesGross",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences.",
        "label": "Deferred Tax Liabilities, Gross",
        "totalLabel": "Deferred Tax Liabilities, Total"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r551",
      "r552"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 18.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",
        "verboseLabel": "Deferred Tax Liabilities"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxesAndTaxCredits": {
     "auth_ref": [
      "r64"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 17.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) and income tax credits.",
        "label": "Deferred Income Taxes and Tax Credits",
        "verboseLabel": "Deferred Income Tax Provision (Benefit)"
       }
      }
     },
     "localname": "DeferredIncomeTaxesAndTaxCredits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredRevenueCurrent": {
     "auth_ref": [
      "r807"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 28.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current.",
        "label": "Deferred Revenue, Current",
        "terseLabel": "Deferred Revenue"
       }
      }
     },
     "localname": "DeferredRevenueCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredRevenueNoncurrent": {
     "auth_ref": [
      "r808"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 19.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as noncurrent.",
        "label": "Deferred Revenue, Noncurrent",
        "terseLabel": "Deferred Revenue"
       }
      }
     },
     "localname": "DeferredRevenueNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r820",
      "r946",
      "r947"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail": {
       "order": 7.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Deferred State and Local Income Tax Expense (Benefit)",
        "terseLabel": "State"
       }
      }
     },
     "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "auth_ref": [
      "r564"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 3.0,
       "parentTag": "alot_DeferredTaxAssetsLiabilitiesGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "Deferred Tax Assets, Gross",
        "totalLabel": "Deferred Tax Assets, Total"
       }
      }
     },
     "localname": "DeferredTaxAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsInventory": {
     "auth_ref": [
      "r157",
      "r944"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory.",
        "label": "Deferred Tax Assets, Inventory",
        "terseLabel": "Inventory"
       }
      }
     },
     "localname": "DeferredTaxAssetsInventory",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsLiabilitiesNet": {
     "auth_ref": [
      "r943"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting.",
        "label": "Deferred Tax Assets, Net",
        "terseLabel": "Total Net Deferred Tax Assets",
        "totalLabel": "Net Deferred Tax Assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNet": {
     "auth_ref": [
      "r943"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "Deferred Tax Assets, Net of Valuation Allowance",
        "terseLabel": "Deferred Tax Assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": {
     "auth_ref": [
      "r157",
      "r944"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 13.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards",
        "terseLabel": "Net Operating Loss",
        "verboseLabel": "Deferred Tax Assets Operating loss carryforwards"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOther": {
     "auth_ref": [
      "r157",
      "r944"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 14.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other.",
        "label": "Deferred Tax Assets, Other",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "DeferredTaxAssetsOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsForeign": {
     "auth_ref": [
      "r156",
      "r157",
      "r944"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 15.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible foreign tax credit carryforwards.",
        "label": "Deferred Tax Assets, Tax Credit Carryforwards, Foreign",
        "terseLabel": "Foreign Tax Credit",
        "verboseLabel": "Foreign tax credit"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxCreditCarryforwardsForeign",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch": {
     "auth_ref": [
      "r156",
      "r157",
      "r944"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible research tax credit carryforwards.",
        "label": "Deferred Tax Assets, Tax Credit Carryforwards, Research",
        "terseLabel": "State R&amp;D Credits",
        "verboseLabel": "Deferred tax assets tax credit carryforwards research"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxCreditCarryforwardsResearch",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost": {
     "auth_ref": [
      "r157",
      "r944"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 7.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-based Compensation Cost",
        "terseLabel": "Share-Based Compensation"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses": {
     "auth_ref": [
      "r157",
      "r944"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 12.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from allowance for credit loss on financing receivable.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Provision for Loan Losses",
        "terseLabel": "Bad Debt"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsProvisionForLoanLosses",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves": {
     "auth_ref": [
      "r157",
      "r944"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 9.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from warranty reserves.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Warranty Reserves",
        "terseLabel": "Warranty Reserve"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r565"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.",
        "label": "Deferred Tax Assets, Valuation Allowance",
        "negatedLabel": "Valuation Allowance",
        "terseLabel": "Valuation allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilities": {
     "auth_ref": [
      "r152",
      "r943"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.",
        "label": "Deferred Tax Liabilities, Net",
        "negatedLabel": "Deferred Tax Liabilities"
       }
      }
     },
     "localname": "DeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets": {
     "auth_ref": [
      "r157",
      "r944"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 19.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill.",
        "label": "Deferred Tax Liabilities, Intangible Assets",
        "terseLabel": "Intangibles"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesOther": {
     "auth_ref": [
      "r157",
      "r944"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 21.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences classified as other.",
        "label": "Deferred Tax Liabilities, Other",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": {
     "auth_ref": [
      "r157",
      "r944"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 20.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment.",
        "label": "Deferred Tax Liabilities, Property, Plant and Equipment",
        "terseLabel": "Accumulated Tax Depreciation in Excess of Book Depreciation"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTaxEffectsOfTemporaryDifferencesThatGaveRiseToSignificantPortionsOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "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": "Defined Contribution Plan, Employer Discretionary Contribution Amount",
        "terseLabel": "Contributions paid or accrued amounted"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerDiscretionaryContributionAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/EmployeeBenefitPlansAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r63",
      "r103"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.",
        "label": "Depreciation",
        "terseLabel": "Depreciation expense on property, plant and equipment"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r63",
      "r346"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 14.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, Depletion and Amortization",
        "terseLabel": "Depreciation and Amortization"
       }
      }
     },
     "localname": "DepreciationDepletionAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeContractTypeDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset.",
        "label": "Derivative Contract [Domain]",
        "terseLabel": "Derivative Contract [Domain]"
       }
      }
     },
     "localname": "DerivativeContractTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail",
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DerivativeInstrumentRiskAxis": {
     "auth_ref": [
      "r183",
      "r184",
      "r187",
      "r189",
      "r754"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of derivative contract.",
        "label": "Derivative Instrument [Axis]",
        "terseLabel": "Derivative Instrument [Axis]"
       }
      }
     },
     "localname": "DerivativeInstrumentRiskAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail",
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Instruments and Hedging Activities Disclosure [Abstract]",
        "verboseLabel": "Derivative Instruments and Hedging Activities Disclosure [Abstract]"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock": {
     "auth_ref": [
      "r193",
      "r604"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.",
        "label": "Derivative Instruments and Hedging Activities Disclosure [Text Block]",
        "terseLabel": "Derivative Financial Instruments and Risk Management"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagement"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems": {
     "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": "Derivative Instruments and Hedging Activities Disclosures [Line Items]",
        "terseLabel": "Derivative Instruments and Hedging Activities Disclosures [Line Items]"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail",
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about derivatives and hedging activities.",
        "label": "Derivative Instruments and Hedging Activities Disclosures [Table]",
        "terseLabel": "Derivative Instruments and Hedging Activities Disclosures [Table]",
        "verboseLabel": "Derivative Instruments and Hedging Activities Disclosures [Table]"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail",
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis": {
     "auth_ref": [
      "r180",
      "r183",
      "r187"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of hedging relationship.",
        "label": "Hedging Relationship [Axis]",
        "verboseLabel": "Hedging Relationship [Axis]"
       }
      }
     },
     "localname": "DerivativeInstrumentsGainLossByHedgingRelationshipAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail",
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet": {
     "auth_ref": [
      "r186",
      "r188"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The effective portion of net gain (loss) reclassified from accumulated other comprehensive income into income on derivative instruments designated and qualifying as hedging instruments.",
        "label": "Derivative Instruments, Gain (Loss) Reclassified from Accumulated OCI into Income, Effective Portion, Net",
        "terseLabel": "Amount of Gain Reclassified from Accumulated OCI into Income (Expense)",
        "verboseLabel": "Amount of Gain (Loss) Reclassified from Accumulated OCI into Income"
       }
      }
     },
     "localname": "DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail",
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The income statement location of the effective portion of net gain (loss) reclassified from accumulated other comprehensive income into income on derivative instruments designated and qualifying as hedging instruments.",
        "label": "Derivative Instruments, Income Statement Location of Gain (Loss) Reclassified from Accumulated OCI",
        "terseLabel": "Location of Gain Reclassified from Accumulated OCI into Income (Expense)"
       }
      }
     },
     "localname": "DerivativeInstrumentsIncomeStatementLocationOfGainOrLossReclassifiedFromAccumulatedOCI",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativesPolicyTextBlock": {
     "auth_ref": [
      "r177",
      "r178",
      "r180",
      "r181",
      "r192",
      "r296"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for its derivative instruments and hedging activities.",
        "label": "Derivatives, Policy [Policy Text Block]",
        "terseLabel": "Derivative Financial Instruments"
       }
      }
     },
     "localname": "DerivativesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisaggregationOfRevenueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Abstract]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "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": "Disaggregation of Revenue [Line Items]",
        "terseLabel": "Disaggregation of Revenue [Line Items]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail",
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "auth_ref": [
      "r492",
      "r770",
      "r771",
      "r772",
      "r773",
      "r774",
      "r775",
      "r776"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table]",
        "terseLabel": "Disaggregation of Revenue [Table]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail",
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r852"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table Text Block]",
        "terseLabel": "Summary of Revenues Disaggregated by Primary Geographic Markets and Major Product Type"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognitionTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r507",
      "r537",
      "r538",
      "r540",
      "r545",
      "r783"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "Disclosure of Compensation Related Costs, Share-based Payments [Text Block]",
        "terseLabel": "Share-Based Compensation"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disclosure of Compensation Related Costs, Share-based Payments [Abstract]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DividendsCommonStockCash": {
     "auth_ref": [
      "r131"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash.",
        "label": "Dividends, Common Stock, Cash",
        "negatedTerseLabel": "Common Stock\u2014Cash Dividend\u2014$0.07 per share"
       }
      }
     },
     "localname": "DividendsCommonStockCash",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DomesticCountryMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile.",
        "label": "Domestic Tax Authority [Member]",
        "terseLabel": "Federal Tax [Member]"
       }
      }
     },
     "localname": "DomesticCountryMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r283",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r321",
      "r323",
      "r326",
      "r327",
      "r328",
      "r330",
      "r615",
      "r616",
      "r691",
      "r697",
      "r760"
     ],
     "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": "Earnings Per Share, Basic",
        "terseLabel": "Net Income Per Common Share\u2014Basic"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r283",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r323",
      "r326",
      "r327",
      "r328",
      "r330",
      "r615",
      "r616",
      "r691",
      "r697",
      "r760"
     ],
     "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": "Earnings Per Share, Diluted",
        "terseLabel": "Net Income Per Common Share\u2014Diluted"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "auth_ref": [
      "r70",
      "r71"
     ],
     "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]",
        "terseLabel": "Net Income Per Common Share"
       }
      }
     },
     "localname": "EarningsPerSharePolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r636"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 30.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for 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": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents",
        "terseLabel": "Effect of Foreign Exchange Rate Changes on Cash and Cash Equivalents"
       }
      }
     },
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "auth_ref": [
      "r554"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Effective Income Tax Rate Reconciliation, Percent",
        "terseLabel": "Effective tax rate for income from continuing operation"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r21"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 22.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Employee-related Liabilities, Current",
        "terseLabel": "Accrued Compensation"
       }
      }
     },
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r539"
     ],
     "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": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition",
        "terseLabel": "Unrecognized compensation expense to be recognized, Weighted average period"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": {
     "auth_ref": [
      "r940"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Share-based Awards Other than Options",
        "terseLabel": "Unrecognized compensation expense related to RSUs and RSAs"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": {
     "auth_ref": [
      "r940"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost to be recognized for option under share-based payment arrangement.",
        "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Stock Options",
        "terseLabel": "Unrecognized compensation expense related to options"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeStockOptionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.",
        "label": "Employee Stock Option [Member]",
        "terseLabel": "Stock Options [Member]"
       }
      }
     },
     "localname": "EmployeeStockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "localname": "EquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r124",
      "r242",
      "r277",
      "r278",
      "r279",
      "r305",
      "r306",
      "r307",
      "r309",
      "r317",
      "r319",
      "r332",
      "r382",
      "r479",
      "r541",
      "r542",
      "r543",
      "r573",
      "r574",
      "r614",
      "r637",
      "r638",
      "r639",
      "r640",
      "r641",
      "r643",
      "r673",
      "r702",
      "r703",
      "r704"
     ],
     "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]",
        "terseLabel": "Equity Component [Domain]"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail",
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EstimateOfFairValueFairValueDisclosureMember": {
     "auth_ref": [
      "r447",
      "r622",
      "r765",
      "r766"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measured as an estimate of fair value.",
        "label": "Estimate of Fair Value Measurement [Member]",
        "verboseLabel": "Fair Value [Member]"
       }
      }
     },
     "localname": "EstimateOfFairValueFairValueDisclosureMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems": {
     "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": "Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]",
        "terseLabel": "Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]"
       }
      }
     },
     "localname": "FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByBalanceSheetGroupingTable": {
     "auth_ref": [
      "r194",
      "r200",
      "r201"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities.",
        "label": "Fair Value, by Balance Sheet Grouping [Table]",
        "terseLabel": "Fair Value, by Balance Sheet Grouping [Table]"
       }
      }
     },
     "localname": "FairValueByBalanceSheetGroupingTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "auth_ref": [
      "r447",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r618",
      "r675",
      "r676",
      "r677",
      "r765",
      "r766",
      "r777",
      "r778",
      "r779"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.",
        "label": "Fair Value Hierarchy and NAV [Axis]",
        "terseLabel": "Fair Value Hierarchy and NAV [Axis]"
       }
      }
     },
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByMeasurementBasisAxis": {
     "auth_ref": [
      "r194",
      "r197",
      "r447",
      "r765",
      "r766"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by measurement basis.",
        "label": "Measurement Basis [Axis]",
        "terseLabel": "Measurement Basis [Axis]"
       }
      }
     },
     "localname": "FairValueByMeasurementBasisAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Disclosures [Abstract]"
       }
      }
     },
     "localname": "FairValueDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "auth_ref": [
      "r620"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.",
        "label": "Fair Value Disclosures [Text Block]",
        "terseLabel": "Fair Value Measurements"
       }
      }
     },
     "localname": "FairValueDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/FairValueMeasurements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "auth_ref": [
      "r447",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r618",
      "r677",
      "r765",
      "r766",
      "r777",
      "r778",
      "r779"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Inputs, Level 3 [Member]",
        "terseLabel": "Level 3 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel3Member",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock": {
     "auth_ref": [
      "r195",
      "r196"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the fair value measurement of liabilities using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets), and gains or losses recognized in other comprehensive income (loss) and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs) by class of liability.",
        "label": "Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]",
        "terseLabel": "Summary of Changes in Fair value of Level 3 Financial Liability"
       }
      }
     },
     "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/FairValueMeasurementsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "auth_ref": [
      "r447",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r675",
      "r676",
      "r677",
      "r765",
      "r766",
      "r777",
      "r778",
      "r779"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.",
        "label": "Fair Value Hierarchy and NAV [Domain]",
        "terseLabel": "Fair Value Hierarchy and NAV [Domain]"
       }
      }
     },
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r198",
      "r199"
     ],
     "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]",
        "terseLabel": "Fair Value Measurement"
       }
      }
     },
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FederalFundsEffectiveSwapRateMember": {
     "auth_ref": [
      "r952"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fixed rate on U.S. dollar, constant-notional interest rate swap having its variable-rate leg referenced to Federal Funds effective rate with no additional spread over Federal Funds effective rate on that variable-rate leg.",
        "label": "Federal Funds Effective Swap Rate [Member]",
        "verboseLabel": "Federal Funds Effective Swap Rate [Member]"
       }
      }
     },
     "localname": "FederalFundsEffectiveSwapRateMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FederalHomeLoanBanksAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Federal Home Loan Banks [Abstract]"
       }
      }
     },
     "localname": "FederalHomeLoanBanksAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "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": "Finite-Lived Intangible Asset, Useful Life",
        "terseLabel": "Useful Life (Years)"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r254",
      "r406"
     ],
     "calculation": {
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": -1.0
      }
     },
     "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": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "negatedLabel": "Accumulated Amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable": {
     "auth_ref": [
      "r93"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table containing detailed characteristics of finite-lived intangible assets acquired during a business combination. Finite-lived intangible assets are assets that have no physical form, but have expected future economic benefit, and are expected to be used over a defined period. Acquired finite-lived intangible assets are disclosed by major class (assets that can be grouped together because they are similar, either by their nature or by their use in operations of the Entity) and in total. Additionally, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period are also disclosed.",
        "label": "Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table]",
        "terseLabel": "Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r99"
     ],
     "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": "Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r99"
     ],
     "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 fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Five",
        "terseLabel": "2028"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r99"
     ],
     "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 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": "Finite-Lived Intangible Assets, Amortization Expense, Year Four",
        "terseLabel": "2027"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r99"
     ],
     "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 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": "Finite-Lived Intangible Assets, Amortization Expense, Year Three",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r99"
     ],
     "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": "Finite-Lived Intangible Assets, Amortization Expense, Year Two",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsSummaryOfEstimatedAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r403",
      "r405",
      "r406",
      "r407",
      "r682",
      "r686"
     ],
     "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]",
        "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail",
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail",
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsFairValueDisclosure": {
     "auth_ref": [
      "r954"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value portion of assets, excluding financial assets, that lack physical substance, having a limited useful life.",
        "label": "Finite-lived Intangible Assets, Fair Value Disclosure",
        "terseLabel": "Fair Value"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r97",
      "r686"
     ],
     "calculation": {
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "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": "Finite-Lived Intangible Assets, Gross",
        "terseLabel": "Gross Carrying Amount"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsLineItems": {
     "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": "Finite-Lived Intangible Assets [Line Items]",
        "terseLabel": "Finite-Lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r93",
      "r96"
     ],
     "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]",
        "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail",
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail",
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r97",
      "r682"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 8.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail": {
       "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": "Finite-Lived Intangible Assets, Net",
        "totalLabel": "Net Carrying Amount",
        "verboseLabel": "Identifiable Intangibles, net"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1": {
     "auth_ref": [
      "r682"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Remaining amortization period of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Finite-Lived Intangible Assets, Remaining Amortization Period",
        "verboseLabel": "Finite lived intangible assets remaining useful Life"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_FinitelivedIntangibleAssetsAcquired1": {
     "auth_ref": [
      "r404"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.",
        "label": "Finite-Lived Intangible Assets Acquired",
        "terseLabel": "Fair Value"
       }
      }
     },
     "localname": "FinitelivedIntangibleAssetsAcquired1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": {
     "auth_ref": [
      "r632",
      "r633",
      "r634",
      "r635"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 15.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.",
        "label": "Foreign Currency Transaction Gain (Loss), before Tax",
        "terseLabel": "Net transactional foreign exchange gain (loss)",
        "verboseLabel": "Gain (Loss) on Foreign Currency Transactions"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionGainLossBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "auth_ref": [
      "r645"
     ],
     "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]",
        "terseLabel": "Foreign Currency Translation"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ForeignEarningsRepatriated": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of foreign earnings repatriated from subsidiaries outside the country of domicile.",
        "label": "Foreign Earnings Repatriated",
        "terseLabel": "Deemed repatriated earnings"
       }
      }
     },
     "localname": "ForeignEarningsRepatriated",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignExchangeMember": {
     "auth_ref": [
      "r191"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading of derivative or nonderivative instruments whose primary underlying risk is tied to foreign exchange rates.",
        "label": "Foreign Exchange [Member]",
        "terseLabel": "Foreign Exchange [Member]"
       }
      }
     },
     "localname": "ForeignExchangeMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": {
     "auth_ref": [
      "r63"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 26.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 16.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.",
        "label": "Gain (Loss) on Disposition of Property Plant Equipment",
        "negatedTerseLabel": "Loss on Disposal of Assets",
        "terseLabel": "Loss on Disposal of Assets"
       }
      }
     },
     "localname": "GainLossOnSaleOfPropertyPlantEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows",
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainsLossesOnExtinguishmentOfDebt": {
     "auth_ref": [
      "r63",
      "r118",
      "r119"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 24.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 13.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "definitionGuidance": "Extinguishment of Debt \u2013 PPP Loan",
        "documentation": "Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.",
        "label": "Gain (Loss) on Extinguishment of Debt",
        "negatedLabel": "Gain on Extinguishment of Debt",
        "terseLabel": "Gain on Extinguishment of Debt \u2013 PPP Loan",
        "verboseLabel": "Gain on Extinguishment of Debt \u2013 PPP Loan"
       }
      }
     },
     "localname": "GainsLossesOnExtinguishmentOfDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows",
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome",
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 10.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.",
        "label": "General and Administrative Expense",
        "terseLabel": "Corporate Expenses",
        "verboseLabel": "General and Administrative"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpenseMember": {
     "auth_ref": [
      "r40"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing general and administrative expense.",
        "label": "General and Administrative Expense [Member]",
        "verboseLabel": "General and Administrative Expense [Member]"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesLeaseCostInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r253",
      "r391",
      "r688",
      "r763",
      "r789",
      "r841",
      "r842"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 9.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",
        "terseLabel": "Goodwill",
        "verboseLabel": "Goodwill assigned"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": {
     "auth_ref": [
      "r401",
      "r402",
      "r763"
     ],
     "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]",
        "terseLabel": "Goodwill"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsGoodwillPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy": {
     "auth_ref": [
      "r95"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for intangible assets. This accounting policy may address both intangible assets subject to amortization and those that are not. The following also may be disclosed: (1) a description of intangible assets (2) the estimated useful lives of those assets (3) the amortization method used (4) how the entity assesses and measures impairment of such assets (5) how future cash flows are estimated (6) how the fair values of such asset are determined.",
        "label": "Goodwill and Intangible Assets, Intangible Assets, Policy [Policy Text Block]",
        "terseLabel": "Intangible Assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsIntangibleAssetsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r43",
      "r292",
      "r351",
      "r356",
      "r362",
      "r365",
      "r378",
      "r420",
      "r421",
      "r423",
      "r424",
      "r425",
      "r427",
      "r429",
      "r431",
      "r432",
      "r623",
      "r762",
      "r848"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 4.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": "Gross Profit",
        "totalLabel": "Gross Profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GuaranteesAndProductWarrantiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Guarantees and Product Warranties [Abstract]"
       }
      }
     },
     "localname": "GuaranteesAndProductWarrantiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_HedgingRelationshipDomain": {
     "auth_ref": [
      "r180"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Nature or intent of a hedge.",
        "label": "Hedging Relationship [Domain]",
        "terseLabel": "Hedging Relationship [Domain]",
        "verboseLabel": "Hedging Relationship [Domain]"
       }
      }
     },
     "localname": "HedgingRelationshipDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail",
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill": {
     "auth_ref": [
      "r63",
      "r100"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of impairment loss recognized in the period resulting from the write-down of the carrying amount of an intangible asset (excluding goodwill) to fair value.",
        "label": "Impairment of Intangible Assets (Excluding Goodwill)",
        "terseLabel": "Impairment charges for intangible assets"
       }
      }
     },
     "localname": "ImpairmentOfIntangibleAssetsExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwillAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Impairment of Intangible Assets (Excluding Goodwill) [Abstract]"
       }
      }
     },
     "localname": "ImpairmentOfIntangibleAssetsExcludingGoodwillAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ImpairmentOfIntangibleAssetsFinitelived": {
     "auth_ref": [
      "r816",
      "r843"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of impairment loss recognized in the period resulting from the write-down of the carrying amount of a finite-lived intangible asset to fair value.",
        "label": "Impairment of Intangible Assets, Finite-lived",
        "terseLabel": "Impairments of intangible assets"
       }
      }
     },
     "localname": "ImpairmentOfIntangibleAssetsFinitelived",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse": {
     "auth_ref": [
      "r63",
      "r102",
      "r107"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale).",
        "label": "Impairment of Long-Lived Assets Held-for-use",
        "verboseLabel": "Impairment of Long lived assets held for use"
       }
      }
     },
     "localname": "ImpairmentOfLongLivedAssetsHeldForUse",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "auth_ref": [
      "r101",
      "r108"
     ],
     "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]",
        "terseLabel": "Long-Lived Assets"
       }
      }
     },
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": {
     "auth_ref": [
      "r293",
      "r579"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Domestic",
        "terseLabel": "Domestic"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r38",
      "r210",
      "r218",
      "r234",
      "r351",
      "r356",
      "r362",
      "r365",
      "r692",
      "r762"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      },
      "http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "totalLabel": "Income before Income Taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome",
      "http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign": {
     "auth_ref": [
      "r293",
      "r579"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Foreign",
        "terseLabel": "Foreign"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r409",
      "r411"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location in the income statement.",
        "label": "Income Statement Location [Axis]",
        "verboseLabel": "Income Statement Location [Axis]"
       }
      }
     },
     "localname": "IncomeStatementLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesLeaseCostInformationDetail",
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [
      "r411"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in the income statement.",
        "label": "Income Statement Location [Domain]",
        "verboseLabel": "Income Statement Location [Domain]"
       }
      }
     },
     "localname": "IncomeStatementLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesLeaseCostInformationDetail",
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "auth_ref": [
      "r154"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by tax jurisdiction.",
        "label": "Income Tax Authority [Axis]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxAuthorityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes.",
        "label": "Income Tax Authority [Domain]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r294",
      "r555",
      "r561",
      "r567",
      "r575",
      "r580",
      "r582",
      "r583",
      "r584"
     ],
     "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]",
        "terseLabel": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r295",
      "r318",
      "r319",
      "r349",
      "r553",
      "r576",
      "r581",
      "r698"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      },
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "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": "Income Tax Expense (Benefit)",
        "positiveLabel": "Income Tax Provision",
        "presentationGuidance": "Income Tax Provision",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome",
      "http://astro-med.com/role/IncomeTaxesComponentsOfProvisionForIncomeTaxesDetail",
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r276",
      "r549",
      "r550",
      "r561",
      "r562",
      "r566",
      "r570"
     ],
     "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]",
        "terseLabel": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r941"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 10.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 increase (decrease) in the valuation allowance for deferred tax assets.",
        "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount",
        "terseLabel": "Change in Valuation Allowance"
       }
      }
     },
     "localname": "IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential": {
     "auth_ref": [
      "r941"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 7.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": "Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Amount",
        "terseLabel": "Foreign Rate Differential"
       }
      }
     },
     "localname": "IncomeTaxReconciliationForeignIncomeTaxRateDifferential",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r554"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "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": "Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount",
        "terseLabel": "Income Tax Provision at Statutory Rate"
       }
      }
     },
     "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment": {
     "auth_ref": [
      "r941"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 8.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": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Meals and Entertainment, Amount",
        "terseLabel": "Meals and Entertainment"
       }
      }
     },
     "localname": "IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost": {
     "auth_ref": [
      "r941"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 9.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": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-based Payment Arrangement, Amount",
        "terseLabel": "Share Based Compensation"
       }
      }
     },
     "localname": "IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationOtherAdjustments": {
     "auth_ref": [
      "r941"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 6.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 other adjustments.",
        "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Amount",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationPriorYearIncomeTaxes": {
     "auth_ref": [
      "r941"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 3.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 revisions of previously reported income tax expense (benefit).",
        "label": "Effective Income Tax Rate Reconciliation, Prior Year Income Taxes, Amount",
        "terseLabel": "Return to Provision Adjustment"
       }
      }
     },
     "localname": "IncomeTaxReconciliationPriorYearIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r941"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "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 state and local income tax expense (benefit).",
        "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount",
        "terseLabel": "State Taxes, Net of Federal Tax Effect"
       }
      }
     },
     "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationTaxCreditsForeign": {
     "auth_ref": [
      "r941"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 5.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": "Effective Income Tax Rate Reconciliation, Tax Credit, Foreign, Amount",
        "negatedLabel": "Foreign Derived Intangible Income"
       }
      }
     },
     "localname": "IncomeTaxReconciliationTaxCreditsForeign",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationTaxCreditsResearch": {
     "auth_ref": [
      "r941"
     ],
     "calculation": {
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail": {
       "order": 4.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 research tax credit.",
        "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Research, Amount",
        "negatedLabel": "R&amp;D Credits"
       }
      }
     },
     "localname": "IncomeTaxReconciliationTaxCreditsResearch",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesReconciliationOfIncomeTaxProvisionBenefitWithTheAmountComputedByApplyingTheStatutoryFederalIncomeTaxRateToTheIncomeBeforeIncomeTaxProvisionBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r67"
     ],
     "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, net of any cash received during the current period as refunds for the overpayment of taxes.",
        "label": "Income Taxes Paid, Net",
        "terseLabel": "Cash Paid During the Period for Income Taxes, Net of Refunds"
       }
      }
     },
     "localname": "IncomeTaxesPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "auth_ref": [
      "r62"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 20.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": "Increase (Decrease) in Accounts Payable and Accrued Liabilities",
        "terseLabel": "Accounts Payable and Accrued Expenses"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r62"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 18.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": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Accounts Receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": {
     "auth_ref": [
      "r62"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 21.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction.",
        "label": "Increase (Decrease) in Income Taxes Payable",
        "verboseLabel": "Income Taxes Payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r62"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 19.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": "Increase (Decrease) in Inventories",
        "negatedLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "verboseLabel": "Changes in Assets and Liabilities, net of impact of acquisition:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet": {
     "auth_ref": [
      "r62"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 22.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in operating assets after deduction of operating liabilities classified as other.",
        "label": "Increase (Decrease) in Other Operating Assets and Liabilities, Net",
        "negatedLabel": "Other"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherOperatingCapitalNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntangibleAssetsAmortizationPeriodMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A revision in the estimated economic useful life of a finite-lived intangible asset (the period of time over which the asset is projected to benefit operations).",
        "label": "Intangible Assets, Amortization Period [Member]",
        "terseLabel": "Intangible Assets, Amortization Period [Member]"
       }
      }
     },
     "localname": "IntangibleAssetsAmortizationPeriodMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r408"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all or part of the information related to intangible assets.",
        "label": "Intangible Assets Disclosure [Text Block]",
        "terseLabel": "Intangible Assets"
       }
      }
     },
     "localname": "IntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r208",
      "r220",
      "r280",
      "r345",
      "r648"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 14.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.",
        "label": "Interest Expense",
        "negatedLabel": "Interest Expense"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpenseDebt": {
     "auth_ref": [
      "r48",
      "r453",
      "r462",
      "r767",
      "r768"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense for debt.",
        "label": "Interest Expense, Debt",
        "verboseLabel": "Interest Expense, Debt"
       }
      }
     },
     "localname": "InterestExpenseDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r285",
      "r288",
      "r289"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.",
        "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities",
        "terseLabel": "Cash Paid During the Period for Interest"
       }
      }
     },
     "localname": "InterestPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "localname": "InventoryDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r388"
     ],
     "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]",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/Inventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoods": {
     "auth_ref": [
      "r809"
     ],
     "calculation": {
      "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.",
        "label": "Inventory, Finished Goods, Gross",
        "terseLabel": "Finished Goods"
       }
      }
     },
     "localname": "InventoryFinishedGoods",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryGross": {
     "auth_ref": [
      "r811"
     ],
     "calculation": {
      "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross 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": "Inventory, Gross",
        "totalLabel": "Inventory, Gross"
       }
      }
     },
     "localname": "InventoryGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r263",
      "r752",
      "r789"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail": {
       "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": "Inventory, Net",
        "totalLabel": "Inventories",
        "verboseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r249",
      "r262",
      "r331",
      "r386",
      "r387",
      "r388",
      "r680",
      "r757"
     ],
     "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]",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryRawMaterialsAndSupplies": {
     "auth_ref": [
      "r811"
     ],
     "calculation": {
      "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross amount of unprocessed materials to be used in manufacturing or production process and supplies that will be consumed.",
        "label": "Inventory, Raw Materials and Supplies, Gross",
        "terseLabel": "Materials and Supplies"
       }
      }
     },
     "localname": "InventoryRawMaterialsAndSupplies",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryValuationReserves": {
     "auth_ref": [
      "r90",
      "r811"
     ],
     "calculation": {
      "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of valuation reserve for inventory.",
        "label": "Inventory Valuation Reserves",
        "negatedLabel": "Inventory Reserve"
       }
      }
     },
     "localname": "InventoryValuationReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcess": {
     "auth_ref": [
      "r810"
     ],
     "calculation": {
      "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.",
        "label": "Inventory, Work in Process, Gross",
        "terseLabel": "Work-in-Progress"
       }
      }
     },
     "localname": "InventoryWorkInProcess",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/InventoriesComponentsOfInventoriesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandAndLandImprovements": {
     "auth_ref": [
      "r806"
     ],
     "calculation": {
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation and depletion of real estate held for productive use and additions or improvements to real estate held for productive use, examples include, but are not limited to, walkways, driveways, fences, and parking lots. Excludes land held for sale.",
        "label": "Land and Land Improvements",
        "terseLabel": "Land and Land Improvements"
       }
      }
     },
     "localname": "LandAndLandImprovements",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandImprovementsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additions or improvements to real estate held.",
        "label": "Land Improvements [Member]",
        "terseLabel": "Land Improvements [Member]"
       }
      }
     },
     "localname": "LandImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r961"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.",
        "label": "Lease, Cost [Table Text Block]",
        "verboseLabel": "Schedule Lease Cost Information"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]",
        "verboseLabel": "Leases [Abstract]"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r962"
     ],
     "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]",
        "verboseLabel": "Schedule of Maturities Of Lease Liabilities"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r662"
     ],
     "calculation": {
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail": {
       "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": "Lessee, Operating Lease, Liability, Payments, Due",
        "totalLabel": "Total Lease Payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r662"
     ],
     "calculation": {
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail": {
       "order": 6.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 due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Five",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r662"
     ],
     "calculation": {
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year One",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r662"
     ],
     "calculation": {
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail": {
       "order": 5.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 fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Five",
        "terseLabel": "2028"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r662"
     ],
     "calculation": {
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail": {
       "order": 4.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": "Lessee, Operating Lease, Liability, to be Paid, Year Four",
        "terseLabel": "2027"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r662"
     ],
     "calculation": {
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail": {
       "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 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": "Lessee, Operating Lease, Liability, to be Paid, Year Three",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r662"
     ],
     "calculation": {
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail": {
       "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": "Lessee, Operating Lease, Liability, to be Paid, Year Two",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r662"
     ],
     "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": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "negatedLabel": "Less: Imputed Interest"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r663"
     ],
     "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]",
        "verboseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LessorLeasesPolicyTextBlock": {
     "auth_ref": [
      "r664",
      "r665",
      "r666",
      "r667"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for leasing arrangements entered into by lessor.",
        "label": "Lessor, Leases [Policy Text Block]",
        "verboseLabel": "Leases"
       }
      }
     },
     "localname": "LessorLeasesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r20",
      "r292",
      "r378",
      "r420",
      "r421",
      "r423",
      "r424",
      "r425",
      "r427",
      "r429",
      "r431",
      "r432",
      "r593",
      "r597",
      "r598",
      "r623",
      "r761",
      "r848",
      "r964",
      "r965"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 13.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": "Liabilities",
        "totalLabel": "TOTAL LIABILITIES"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r12",
      "r216",
      "r230",
      "r789",
      "r819",
      "r840",
      "r957"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "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": "Liabilities and Equity",
        "totalLabel": "TOTAL LIABILITIES AND SHAREHOLDERS' EQUITY"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Equity [Abstract]",
        "terseLabel": "LIABILITIES AND SHAREHOLDERS' EQUITY"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r22",
      "r248",
      "r292",
      "r378",
      "r420",
      "r421",
      "r423",
      "r424",
      "r425",
      "r427",
      "r429",
      "r431",
      "r432",
      "r593",
      "r597",
      "r598",
      "r623",
      "r789",
      "r848",
      "r964",
      "r965"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 20.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": "Liabilities, Current",
        "totalLabel": "Total Current Liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "terseLabel": "CURRENT LIABILITIES"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesNoncurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Noncurrent [Abstract]",
        "terseLabel": "NON-CURRENT\u00a0LIABILITIES"
       }
      }
     },
     "localname": "LiabilitiesNoncurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCredit": {
     "auth_ref": [
      "r3",
      "r215",
      "r224"
     ],
     "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": "Long-term Line of Credit",
        "terseLabel": "Revolving loan outstanding"
       }
      }
     },
     "localname": "LineOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityAxis": {
     "auth_ref": [
      "r18",
      "r818"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by name of lender, which may be a single entity (for example, but not limited to, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit.",
        "label": "Lender Name [Axis]",
        "terseLabel": "Lender Name [Axis]"
       }
      }
     },
     "localname": "LineOfCreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityCommitmentFeeAmount": {
     "auth_ref": [
      "r18"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the fee for available but unused credit capacity under the credit facility.",
        "label": "Line of Credit Facility, Commitment Fee Amount",
        "terseLabel": "Line of Credit Facility, Commitment Fee Amount"
       }
      }
     },
     "localname": "LineOfCreditFacilityCommitmentFeeAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityCommitmentFeePercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The fee, expressed as a percentage of the line of credit facility, for the line of credit facility regardless of whether the facility has been used.",
        "label": "Line of Credit Facility, Commitment Fee Percentage",
        "verboseLabel": "Commitment fee rate"
       }
      }
     },
     "localname": "LineOfCreditFacilityCommitmentFeePercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LineOfCreditFacilityLenderDomain": {
     "auth_ref": [
      "r18",
      "r818"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the lender, which may be a single entity (for example, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit, including a letter of credit facility.",
        "label": "Line of Credit Facility, Lender [Domain]",
        "terseLabel": "Line of Credit Facility, Lender [Domain]"
       }
      }
     },
     "localname": "LineOfCreditFacilityLenderDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r18"
     ],
     "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": "Line of Credit Facility, Maximum Borrowing Capacity",
        "presentationGuidance": "Maximum borrowing capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "auth_ref": [
      "r18"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "definitionGuidance": "Line of Credit Facility, Remaining Borrowing Capacity",
        "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).",
        "label": "Line of Credit Facility, Remaining Borrowing Capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityRemainingBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LinesOfCreditCurrent": {
     "auth_ref": [
      "r1",
      "r212"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 25.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The carrying value as of the balance sheet date of the current portion 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": "Line of Credit, Current",
        "presentationGuidance": "Revolving Line of Credit"
       }
      }
     },
     "localname": "LinesOfCreditCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LondonInterbankOfferedRateLIBORMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate at which a bank borrows funds from other banks in the London interbank market.",
        "label": "London Interbank Offered Rate (LIBOR) [Member]",
        "terseLabel": "LIBOR [Member]"
       }
      }
     },
     "localname": "LondonInterbankOfferedRateLIBORMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LongTermDebt": {
     "auth_ref": [
      "r3",
      "r215",
      "r228",
      "r446",
      "r461",
      "r765",
      "r766"
     ],
     "calculation": {
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.",
        "label": "Long-term Debt",
        "totalLabel": "Long-term Debt"
       }
      }
     },
     "localname": "LongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtCurrent": {
     "auth_ref": [
      "r19"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 29.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Long-term Debt, Current Maturities",
        "negatedLabel": "Current Portion of Term Loan",
        "terseLabel": "Current Portion of Long-Term Debt"
       }
      }
     },
     "localname": "LongTermDebtCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": {
     "auth_ref": [
      "r117",
      "r297",
      "r451"
     ],
     "calculation": {
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-term Debt, Maturities, Repayments of Principal in Next Twelve Months",
        "verboseLabel": "Fiscal 2024"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive": {
     "auth_ref": [
      "r117",
      "r297",
      "r451"
     ],
     "calculation": {
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-term Debt, Maturities, Repayments of Principal in Year Five",
        "verboseLabel": "Fiscal 2028"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": {
     "auth_ref": [
      "r117",
      "r297",
      "r451"
     ],
     "calculation": {
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in 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": "Long-term Debt, Maturities, Repayments of Principal in Year Four",
        "verboseLabel": "Fiscal 2027"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": {
     "auth_ref": [
      "r117",
      "r297",
      "r451"
     ],
     "calculation": {
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in 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": "Long-term Debt, Maturities, Repayments of Principal in Year Three",
        "verboseLabel": "Fiscal 2026"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": {
     "auth_ref": [
      "r117",
      "r297",
      "r451"
     ],
     "calculation": {
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in 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": "Long-term Debt, Maturities, Repayments of Principal in Year Two",
        "verboseLabel": "Fiscal 2025"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfRequiredPrincipalPaymentsRemainingOnLongTermDebtOutstandingDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "auth_ref": [
      "r256"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 14.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.",
        "label": "Long-term Debt, Excluding Current Maturities",
        "terseLabel": "Long-Term Debt",
        "verboseLabel": "Long-Term Debt, net of current portion"
       }
      }
     },
     "localname": "LongTermDebtNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtScheduleOfLongTermDebtInTheAccompanyingCondensedConsolidatedBalanceSheetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtWeightedAverageInterestRateOverTime": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average interest rate of long-term debt outstanding calculated over time.",
        "label": "Long-Term Debt, Weighted Average Interest Rate, over Time",
        "terseLabel": "Long term debt weighted average interest rate over a period of time"
       }
      }
     },
     "localname": "LongTermDebtWeightedAverageInterestRateOverTime",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_MachineryAndEquipmentGross": {
     "auth_ref": [
      "r104"
     ],
     "calculation": {
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail": {
       "order": 4.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, Gross",
        "terseLabel": "Machinery and Equipment"
       }
      }
     },
     "localname": "MachineryAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail"
     ],
     "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]",
        "terseLabel": "Machinery and Equipment [Member]"
       }
      }
     },
     "localname": "MachineryAndEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MeasurementInputDiscountRateMember": {
     "auth_ref": [
      "r955"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement input using interest rate to determine present value of future cash flows.",
        "label": "Measurement Input, Discount Rate [Member]"
       }
      }
     },
     "localname": "MeasurementInputDiscountRateMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MeasurementInputTypeAxis": {
     "auth_ref": [
      "r619"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of measurement input used to determine value of asset and liability.",
        "label": "Measurement Input Type [Axis]"
       }
      }
     },
     "localname": "MeasurementInputTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_MeasurementInputTypeDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement input used to determine value of asset and liability.",
        "label": "Measurement Input Type [Domain]"
       }
      }
     },
     "localname": "MeasurementInputTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r287"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "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": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "Net Cash Provided (Used) by Financing Activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]",
        "terseLabel": "Cash Flows from Financing Activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r287"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 27.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": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Net Cash Used by Investing Activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]",
        "terseLabel": "Cash Flows from Investing Activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r59",
      "r61",
      "r64"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 13.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": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Net Cash Provided (Used) by Operating Activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Cash Flows from Operating Activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r39",
      "r64",
      "r219",
      "r233",
      "r246",
      "r271",
      "r274",
      "r279",
      "r292",
      "r308",
      "r312",
      "r313",
      "r314",
      "r315",
      "r318",
      "r319",
      "r325",
      "r351",
      "r356",
      "r362",
      "r365",
      "r378",
      "r420",
      "r421",
      "r423",
      "r424",
      "r425",
      "r427",
      "r429",
      "r431",
      "r432",
      "r616",
      "r623",
      "r762",
      "r848"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": 6.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      },
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net Income (Loss) Attributable to Parent",
        "terseLabel": "Net Income",
        "totalLabel": "Net Income",
        "verboseLabel": "Net Income"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity",
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail"
     ],
     "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]",
        "terseLabel": "Recent Accounting Pronouncements"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NoncashInvestingAndFinancingItemsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Noncash Investing and Financing Items [Abstract]",
        "terseLabel": "Non-Cash Transactions:"
       }
      }
     },
     "localname": "NoncashInvestingAndFinancingItemsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NoncurrentAssets": {
     "auth_ref": [
      "r369"
     ],
     "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": "Long-Lived Assets",
        "terseLabel": "Long-Lived Assets"
       }
      }
     },
     "localname": "NoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "auth_ref": [
      "r47"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 11.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "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": "Nonoperating Income (Expense)",
        "totalLabel": "Other Income (Expense), net",
        "verboseLabel": "Other Income (Expense), Net"
       }
      }
     },
     "localname": "NonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Nonoperating Income (Expense) [Abstract]",
        "terseLabel": "Other Income (Expense):"
       }
      }
     },
     "localname": "NonoperatingIncomeExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NonoperatingIncomeExpenseMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing nonoperating income (expense).",
        "label": "Nonoperating Income (Expense) [Member]"
       }
      }
     },
     "localname": "NonoperatingIncomeExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NumberOfReportableSegments": {
     "auth_ref": [
      "r833"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.",
        "label": "Number of Reportable Segments",
        "terseLabel": "Number of reporting segments"
       }
      }
     },
     "localname": "NumberOfReportableSegments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OperatingCostsAndExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Costs and Expenses [Abstract]",
        "terseLabel": "Costs and Expenses:"
       }
      }
     },
     "localname": "OperatingCostsAndExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 7.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": "Operating Expenses",
        "totalLabel": "Operating Expenses"
       }
      }
     },
     "localname": "OperatingExpenses",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r351",
      "r356",
      "r362",
      "r365",
      "r762"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "Operating Income (Loss)",
        "terseLabel": "Operating Income",
        "totalLabel": "Operating Income"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseExpense": {
     "auth_ref": [
      "r960"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating lease expense. Excludes sublease income.",
        "label": "Operating Lease, Expense",
        "verboseLabel": "Operating Lease Costs"
       }
      }
     },
     "localname": "OperatingLeaseExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesLeaseCostInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r656"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Operating Lease, Liability",
        "verboseLabel": "Total Lease Liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesMaturitiesOfLeaseLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r656"
     ],
     "calculation": {
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail": {
       "order": 7.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "definitionGuidance": "Other Accrued Expenses",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Operating Lease, Liability, Current",
        "verboseLabel": "Lease Liability"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail",
      "http://astro-med.com/role/LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": {
     "auth_ref": [
      "r657"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of financial position that includes current operating lease liability.",
        "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r656"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 16.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": "Operating Lease, Liability, Noncurrent",
        "terseLabel": "Lease Liabilities",
        "verboseLabel": "Lease Liabilities, net of current portion"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r658",
      "r659"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "Operating Lease, Payments",
        "verboseLabel": "Cash paid for operating lease liabilities"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesSupplementalCashFlowInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r655"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 12.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": "Operating Lease, Right-of-Use Asset",
        "terseLabel": "Right of Use Assets",
        "verboseLabel": "Right of Use Asset"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/LeasesScheduleOfBalanceSheetAndOtherInformationRelatedToOperatingLeasesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r661",
      "r788"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average discount rate for operating lease calculated at point in time.",
        "label": "Operating Lease, Weighted Average Discount Rate, Percent",
        "verboseLabel": "Operating Lease, Weighted Average Discount Rate, Percent"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r660",
      "r788"
     ],
     "lang": {
      "en-us": {
       "role": {
        "definitionGuidance": "Operating Lease, Weighted Average Remaining Lease Term",
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Operating Lease, Weighted Average Remaining Lease Term"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Leases, Future Minimum Payments Due, Fiscal Year Maturity [Abstract]"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingSegmentsMember": {
     "auth_ref": [
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r365"
     ],
     "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]",
        "terseLabel": "Operating Segments [Member]"
       }
      }
     },
     "localname": "OperatingSegmentsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r21"
     ],
     "calculation": {
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.",
        "label": "Other Accrued Liabilities, Current",
        "verboseLabel": "Other Accrued Expenses"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsMiscellaneousNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 11.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of other miscellaneous assets expected to be realized or consumed after one year or normal operating cycle, if longer.",
        "label": "Other Assets, Miscellaneous, Noncurrent",
        "verboseLabel": "Other Assets"
       }
      }
     },
     "localname": "OtherAssetsMiscellaneousNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax": {
     "auth_ref": [
      "r34",
      "r36",
      "r278",
      "r637",
      "r639",
      "r643",
      "r813"
     ],
     "calculation": {
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax, before reclassification adjustments of other comprehensive income (loss).",
        "label": "Other Comprehensive Income (Loss), before Reclassifications, Net of Tax",
        "terseLabel": "Other Comprehensive Income (Loss) before reclassification"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax": {
     "auth_ref": [
      "r266",
      "r268"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax and before reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification, after Tax",
        "terseLabel": "Change in Value of Derivatives Designated as Cash Flow Hedge"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax": {
     "auth_ref": [
      "r266",
      "r268",
      "r599",
      "r600",
      "r603"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before tax and reclassification, of gain (loss) from derivative instrument designated and qualifying cash flow hedge included in assessment of hedge effectiveness.",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification and Tax",
        "terseLabel": "Amount of Gain (Loss) Recognized in OCI on Derivative"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementScheduleOfImpactOfTheDerivativeInstrumentsInTheCondensedConsolidatedFinancialStatementsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax": {
     "auth_ref": [
      "r268",
      "r270"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": 4.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax, of reclassification of gain (loss) from accumulated other comprehensive income (AOCI) for derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, after Tax",
        "negatedLabel": "(Gains) Losses from Cash Flow Hedges Reclassified to Income Statement"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax": {
     "auth_ref": [
      "r267",
      "r601"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": 5.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax and adjustments, of gain (loss) from increase (decrease) in value of excluded component of derivative designated and qualifying as hedge. Adjustments include, but are not limited to, reclassifications for sale and settlement, and amounts recognized under systematic and rational method.",
        "label": "Other Comprehensive Income (Loss), Derivative, Excluded Component, Increase (Decrease), after Adjustments and Tax",
        "terseLabel": "Cross-Currency Interest Rate Swap Terminations"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax": {
     "auth_ref": [
      "r267",
      "r268",
      "r601",
      "r603"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax and before adjustments, of gain (loss) from increase (decrease) in value of excluded component of derivative designated and qualifying as hedge. Adjustments include, but are not limited to, reclassifications for sale and settlement, and amounts recognized under systematic and rational method.",
        "label": "Other Comprehensive Income (Loss), Derivative, Excluded Component, Increase (Decrease), before Adjustments, after Tax",
        "verboseLabel": "Interest Rate Swap Termination"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseBeforeAdjustmentsAfterTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "auth_ref": [
      "r29"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.",
        "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax",
        "terseLabel": "Foreign Currency Translation Adjustments"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r36",
      "r124",
      "r272",
      "r275",
      "r281",
      "r637",
      "r642",
      "r643",
      "r689",
      "r695",
      "r813",
      "r814"
     ],
     "calculation": {
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss).",
        "label": "Other Comprehensive Income (Loss), Net of Tax",
        "terseLabel": "Other Comprehensive Income (Loss)",
        "totalLabel": "Other Comprehensive Income (Loss)"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail",
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity",
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]",
        "terseLabel": "Other Comprehensive Income (Loss), net of taxes and reclassification adjustments:"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherExpenseMember": {
     "auth_ref": [
      "r188"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing other expense.",
        "label": "Other Expense [Member]"
       }
      }
     },
     "localname": "OtherExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r49"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 12.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.",
        "label": "Other Nonoperating Income (Expense)",
        "verboseLabel": "Other, net"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PayablesAndAccrualsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payables and Accruals [Abstract]"
       }
      }
     },
     "localname": "PayablesAndAccrualsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PaymentsOfDebtIssuanceCosts": {
     "auth_ref": [
      "r58"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt.",
        "label": "Payments of Debt Issuance Costs",
        "negatedLabel": "Payments of Debt Issuance Costs"
       }
      }
     },
     "localname": "PaymentsOfDebtIssuanceCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDividendsCommonStock": {
     "auth_ref": [
      "r56"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.",
        "label": "Payments of Ordinary Dividends, Common Stock",
        "negatedLabel": "Dividends Paid"
       }
      }
     },
     "localname": "PaymentsOfDividendsCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [
      "r284"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Payment, Tax Withholding, Share-based Payment Arrangement",
        "negatedLabel": "Net Cash Used for Payment of Taxes Related to Vested Restricted Stock"
       }
      }
     },
     "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesGross": {
     "auth_ref": [
      "r52",
      "r590"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.",
        "label": "Payments to Acquire Businesses, Gross",
        "terseLabel": "Purchase price of acquisition"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireLand": {
     "auth_ref": [
      "r53"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow from the acquisition of real estate intended to generate income for the owner; excludes land acquired for use by the owner.",
        "label": "Payments to Acquire Land",
        "terseLabel": "Payments to Acquire Additional Interest in Subsidiaries"
       }
      }
     },
     "localname": "PaymentsToAcquireLand",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r53"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 28.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": "Payments to Acquire Property, Plant, and Equipment",
        "negatedLabel": "Additions to Property, Plant and Equipment",
        "terseLabel": "Capital Expenditures"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PerformanceSharesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based payment arrangement awarded for meeting performance target.",
        "label": "Performance Shares [Member]",
        "terseLabel": "Performance Based RSUs [Member]"
       }
      }
     },
     "localname": "PerformanceSharesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PlanNameAxis": {
     "auth_ref": [
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by plan name for share-based payment arrangement.",
        "label": "Plan Name [Axis]",
        "terseLabel": "Plan Name [Axis]"
       }
      }
     },
     "localname": "PlanNameAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PlanNameDomain": {
     "auth_ref": [
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan name for share-based payment arrangement.",
        "label": "Plan Name [Domain]",
        "terseLabel": "Plan Name [Domain]"
       }
      }
     },
     "localname": "PlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PortionAtFairValueFairValueDisclosureMember": {
     "auth_ref": [
      "r621"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measured at fair value for financial reporting purposes.",
        "label": "Portion at Fair Value Measurement [Member]"
       }
      }
     },
     "localname": "PortionAtFairValueFairValueDisclosureMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/FairValueMeasurementsScheduleOfCompanysLongTermDebtIncludingTheCurrentPortionNotReflectedInFinancialStatementsAtFairValueDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PostemploymentBenefitsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Postemployment Benefits [Abstract]"
       }
      }
     },
     "localname": "PostemploymentBenefitsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r6",
      "r463"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.",
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "terseLabel": "Preferred Stock, Par Value"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r6"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.",
        "label": "Preferred Stock, Shares Authorized",
        "terseLabel": "Preferred Stock, Shares Authorized"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r6",
      "r463"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.",
        "label": "Preferred Stock, Shares Issued",
        "terseLabel": "Preferred Stock, Shares Issued"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r6",
      "r789"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 31.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Preferred Stock, Value, Issued",
        "terseLabel": "Preferred Stock"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "auth_ref": [
      "r812"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 5.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 in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.",
        "label": "Prepaid Expense and Other Assets, Current",
        "terseLabel": "Prepaid Expenses and Other Current Assets"
       }
      }
     },
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing prepaid expenses and other current assets.",
        "label": "Prepaid Expenses and Other Current Assets [Member]",
        "terseLabel": "Prepaid Expenses and Other Current Assets [Member]"
       }
      }
     },
     "localname": "PrepaidExpensesAndOtherCurrentAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PriorPeriodReclassificationAdjustmentDescription": {
     "auth_ref": [
      "r805"
     ],
     "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, Policy [Policy Text Block]",
        "terseLabel": "Reclassification"
       }
      }
     },
     "localname": "PriorPeriodReclassificationAdjustmentDescription",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfLongTermDebt": {
     "auth_ref": [
      "r55"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer.",
        "label": "Proceeds from Issuance of Long-term Debt",
        "terseLabel": "Proceeds from Long-Term Debt Borrowings"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions": {
     "auth_ref": [
      "r54",
      "r149"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow from issuance of shares under share-based payment arrangement. Includes, but is not limited to, option exercised.",
        "label": "Proceeds from Issuance of Shares under Incentive and Share-based Compensation Plans, Including Stock Options",
        "terseLabel": "Net Cash Proceeds from Employee Stock Option Plans"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromLoans": {
     "auth_ref": [
      "r60"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash received from principal payments made on loans related to operating activities.",
        "label": "Proceeds from Loans",
        "terseLabel": "Debt related commitment fees and debt issuance costs"
       }
      }
     },
     "localname": "ProceedsFromLoans",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromLongTermLinesOfCredit": {
     "auth_ref": [
      "r55"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with maturities due beyond one year or the operating cycle, if longer.",
        "label": "Proceeds from Long-Term Lines of Credit",
        "terseLabel": "Proceeds from long term line of credit"
       }
      }
     },
     "localname": "ProceedsFromLongTermLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromRepaymentsOfLinesOfCredit": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net cash inflow or cash outflow from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with either short term or long term maturity that is collateralized (backed by pledge, mortgage or other lien in the entity's assets).",
        "label": "Proceeds from (Repayments of) Lines of Credit",
        "verboseLabel": "Net (Repayments)/Borrowings under Revolving Credit Facility"
       }
      }
     },
     "localname": "ProceedsFromRepaymentsOfLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromStockPlans": {
     "auth_ref": [
      "r54"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow associated with the amount received from the stock plan during the period.",
        "label": "Proceeds from Stock Plans",
        "terseLabel": "Net Cash Proceeds from Share Purchases under Employee Stock Purchase Plan"
       }
      }
     },
     "localname": "ProceedsFromStockPlans",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantiesDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Warranties Disclosures [Abstract]"
       }
      }
     },
     "localname": "ProductWarrantiesDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ProductWarrantyAccrualClassifiedCurrent": {
     "auth_ref": [
      "r21",
      "r111",
      "r112"
     ],
     "calculation": {
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail": {
       "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 obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Product Warranty Accrual, Current",
        "periodEndLabel": "Balance, end of the year",
        "periodStartLabel": "Balance, beginning of the year",
        "terseLabel": "Warranty"
       }
      }
     },
     "localname": "ProductWarrantyAccrualClassifiedCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccruedExpensesSummaryOfAccruedExpensesDetail",
      "http://astro-med.com/role/ProductWarrantyLiabilityActivityInProductWarrantyLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrualPayments": {
     "auth_ref": [
      "r113"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty.",
        "label": "Standard and Extended Product Warranty Accrual, Decrease for Payments",
        "negatedLabel": "Cost of Warranty Repairs"
       }
      }
     },
     "localname": "ProductWarrantyAccrualPayments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ProductWarrantyLiabilityActivityInProductWarrantyLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrualWarrantiesIssued": {
     "auth_ref": [
      "r114"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in the standard and extended product warranty accrual from warranties issued.",
        "label": "Standard and Extended Product Warranty Accrual, Increase for Warranties Issued",
        "terseLabel": "Provision for Warranty Expense"
       }
      }
     },
     "localname": "ProductWarrantyAccrualWarrantiesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ProductWarrantyLiabilityActivityInProductWarrantyLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyDisclosureTextBlock": {
     "auth_ref": [
      "r116"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for standard and extended product warranties and other product guarantee contracts, including a tabular reconciliation of the changes in the guarantor's aggregate product warranty liability for the reporting period.",
        "label": "Product Warranty Disclosure [Text Block]",
        "terseLabel": "Product Warranty Liability"
       }
      }
     },
     "localname": "ProductWarrantyDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ProductWarrantyLiability"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ProfitLoss": {
     "auth_ref": [
      "r246",
      "r271",
      "r274",
      "r286",
      "r292",
      "r308",
      "r318",
      "r319",
      "r351",
      "r356",
      "r362",
      "r365",
      "r378",
      "r420",
      "r421",
      "r423",
      "r424",
      "r425",
      "r427",
      "r429",
      "r431",
      "r432",
      "r591",
      "r594",
      "r595",
      "r616",
      "r623",
      "r692",
      "r762",
      "r786",
      "r787",
      "r815",
      "r848"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 23.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.",
        "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest",
        "terseLabel": "Net Income"
       }
      }
     },
     "localname": "ProfitLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r106"
     ],
     "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": "Property, Plant and Equipment, Type [Axis]",
        "terseLabel": "Property, Plant and Equipment, Type [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r109",
      "r716",
      "r717",
      "r718"
     ],
     "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]",
        "terseLabel": "Property, Plant and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipment"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r104",
      "r251"
     ],
     "calculation": {
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail": {
       "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": "Property, Plant and Equipment, Gross",
        "totalLabel": "Gross Property, Plant and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r106",
      "r231",
      "r693",
      "r789"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail": {
       "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, Plant and Equipment, Net",
        "terseLabel": "Property, Plant and Equipment, net",
        "totalLabel": "Net Property Plant and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r106",
      "r716",
      "r717"
     ],
     "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]",
        "terseLabel": "Property, Plant and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r106"
     ],
     "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]",
        "terseLabel": "Summary of Property, Plant and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipmentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r104"
     ],
     "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": "Property, Plant and Equipment, Type [Domain]",
        "terseLabel": "Property, Plant and Equipment, Type [Domain]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "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, Plant and Equipment, Useful Life",
        "terseLabel": "Estimated useful lives of the assets"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_PurchaseObligation": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Minimum amount of purchase arrangement in which the entity has agreed to expend funds to procure goods or services from a supplier.",
        "label": "Purchase Obligation",
        "terseLabel": "Purchase obligation"
       }
      }
     },
     "localname": "PurchaseObligation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PurchaseObligationDueInNextTwelveMonths": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of purchase arrangement to be paid in next fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Purchase Obligation, to be Paid, Year One",
        "terseLabel": "Purchase obligation, to be paid, year one"
       }
      }
     },
     "localname": "PurchaseObligationDueInNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReceivablesPolicyTextBlock": {
     "auth_ref": [
      "r836",
      "r837",
      "r838",
      "r839"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for receivable. Includes, but is not limited to, accounts receivable and financing receivable.",
        "label": "Receivables, Policy [Policy Text Block]",
        "terseLabel": "Accounts Receivables and Allowance for Doubtful Accounts"
       }
      }
     },
     "localname": "ReceivablesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax": {
     "auth_ref": [
      "r34",
      "r36",
      "r278",
      "r637",
      "r641",
      "r643",
      "r813"
     ],
     "calculation": {
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of reclassification adjustments of other comprehensive income (loss).",
        "label": "Reclassification from Accumulated Other Comprehensive Income, Current Period, Net of Tax",
        "negatedLabel": "Amounts reclassified from AOCL to Earnings"
       }
      }
     },
     "localname": "ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock": {
     "auth_ref": [
      "r84",
      "r86"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of each significant reconciling item, other than profit (loss), revenues, or assets, in the reconciliation of totals of such items in reportable segments to the entity's corresponding consolidated amount.",
        "label": "Reconciliation of Other Significant Reconciling Items from Segments to Consolidated [Table Text Block]",
        "terseLabel": "Summary of Other Information by Segment"
       }
      }
     },
     "localname": "ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RegulatedOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Regulated Operations [Abstract]"
       }
      }
     },
     "localname": "RegulatedOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RepaymentsOfMediumTermNotes": {
     "auth_ref": [
      "r57"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow to pay off borrowing used to receive debt funding on a regular basis with maturities ranging from 5-10 years.",
        "label": "Repayments of Medium-term Notes",
        "negatedLabel": "Principal Payments on Long-Term Debt"
       }
      }
     },
     "localname": "RepaymentsOfMediumTermNotes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfOtherLongTermDebt": {
     "auth_ref": [
      "r57"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow for the payment of debt classified as other, maturing after one year or the operating cycle, if longer.",
        "label": "Repayments of Other Long-term Debt",
        "negatedLabel": "Payoff of Long-Term Debt"
       }
      }
     },
     "localname": "RepaymentsOfOtherLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r151",
      "r238",
      "r972"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 9.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs 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 whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.",
        "label": "Research and Development Expense",
        "terseLabel": "Research and Development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpenseMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included.",
        "label": "Research and Development Expense [Member]"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpensePolicy": {
     "auth_ref": [
      "r151"
     ],
     "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]",
        "terseLabel": "Research and Development Costs"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpensePolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RestrictedStockExpense": {
     "auth_ref": [
      "r63"
     ],
     "calculation": {
      "http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_ShareBasedCompensation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for award of restricted stock or unit under share-based payment arrangement.",
        "label": "Restricted Stock or Unit Expense",
        "terseLabel": "Restricted Stock Awards and Restricted Stock Units"
       }
      }
     },
     "localname": "RestrictedStockExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedStockMember": {
     "auth_ref": [
      "r70"
     ],
     "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]",
        "terseLabel": "RSA [Member]"
       }
      }
     },
     "localname": "RestrictedStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestrictedStockUnitsRSUMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met.",
        "label": "Restricted Stock Units (RSUs) [Member]",
        "terseLabel": "Restricted Stock Units (RSUs) [Member]"
       }
      }
     },
     "localname": "RestrictedStockUnitsRSUMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r9",
      "r131",
      "r229",
      "r706",
      "r711",
      "r789"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 34.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 (Accumulated Deficit)",
        "terseLabel": "Retained Earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r242",
      "r305",
      "r306",
      "r307",
      "r309",
      "r317",
      "r319",
      "r382",
      "r541",
      "r542",
      "r543",
      "r573",
      "r574",
      "r614",
      "r702",
      "r704"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]",
        "terseLabel": "Retained Earnings [Member]"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetirementPlanTaxStatusAxis": {
     "auth_ref": [
      "r853",
      "r854",
      "r855",
      "r856",
      "r857",
      "r858",
      "r859",
      "r860",
      "r861",
      "r862",
      "r863",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868",
      "r869",
      "r870",
      "r871",
      "r872",
      "r873",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885",
      "r886",
      "r887",
      "r888",
      "r889",
      "r890",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896",
      "r897",
      "r898",
      "r899",
      "r900",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r907",
      "r908",
      "r909",
      "r910",
      "r911",
      "r912",
      "r913"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by tax status of plan designed to provide retirement benefits. Includes, but is not limited to, defined benefit and defined contribution plans.",
        "label": "Retirement Plan Tax Status [Axis]",
        "terseLabel": "Retirement Plan Tax Status [Axis]"
       }
      }
     },
     "localname": "RetirementPlanTaxStatusAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetirementPlanTaxStatusDomain": {
     "auth_ref": [
      "r853",
      "r854",
      "r855",
      "r856",
      "r857",
      "r858",
      "r859",
      "r860",
      "r861",
      "r862",
      "r863",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868",
      "r869",
      "r870",
      "r871",
      "r872",
      "r873",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885",
      "r886",
      "r887",
      "r888",
      "r889",
      "r890",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896",
      "r897",
      "r898",
      "r899",
      "r900",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r907",
      "r908",
      "r909",
      "r910",
      "r911",
      "r912",
      "r913"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tax status of plan designed to provide retirement benefits. Includes, but is not limited to, defined benefit and defined contribution plans.",
        "label": "Retirement Plan Tax Status [Domain]",
        "terseLabel": "Retirement Plan Tax Status [Domain]"
       }
      }
     },
     "localname": "RetirementPlanTaxStatusDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r342",
      "r343",
      "r355",
      "r360",
      "r361",
      "r367",
      "r368",
      "r371",
      "r491",
      "r492",
      "r681"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 5.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.",
        "label": "Revenue from Contract with Customer, Excluding Assessed Tax",
        "terseLabel": "Revenue",
        "verboseLabel": "Total Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail",
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryGeographicMarketsDetail",
      "http://astro-med.com/role/RevenueRecognitionSummaryOfRevenuesDisaggregatedByPrimaryProductTypeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r494",
      "r495"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.",
        "label": "Revenue from Contract with Customer [Text Block]",
        "terseLabel": "Revenue Recognition"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/RevenueRecognition"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueRecognitionPolicyTextBlock": {
     "auth_ref": [
      "r758",
      "r759"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.",
        "label": "Revenue Recognition, Policy [Policy Text Block]",
        "terseLabel": "Revenue Recognition"
       }
      }
     },
     "localname": "RevenueRecognitionPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems": {
     "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": "Revenues from External Customers and Long-Lived Assets [Line Items]",
        "terseLabel": "Revenues from External Customers and Long-Lived Assets [Line Items]"
       }
      }
     },
     "localname": "RevenuesFromExternalCustomersAndLongLivedAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevolvingCreditFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.",
        "label": "Revolving Credit Facility [Member]",
        "terseLabel": "Revolving Credit Facility [Member]"
       }
      }
     },
     "localname": "RevolvingCreditFacilityMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RisksAndUncertaintiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Risks and Uncertainties [Abstract]"
       }
      }
     },
     "localname": "RisksAndUncertaintiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RoyaltyExpense": {
     "auth_ref": [
      "r45"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense related to royalty payments under a contractual arrangement such as payment for mineral and drilling rights and use of technology or intellectual property.",
        "label": "Royalty Expense",
        "terseLabel": "Royalty expense"
       }
      }
     },
     "localname": "RoyaltyExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RoyaltyGuaranteesCommitmentsAmount": {
     "auth_ref": [
      "r687"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount the entity has committed to make for future royalty guarantees.",
        "label": "Royalty Guarantees, Commitments, Amount",
        "verboseLabel": "Royalty guarantee commitement amount"
       }
      }
     },
     "localname": "RoyaltyGuaranteesCommitmentsAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SalesRevenueNetMember": {
     "auth_ref": [
      "r371",
      "r832"
     ],
     "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": "Sales Revenue, Net [Member]",
        "terseLabel": "Sales Revenue, Net [Member]"
       }
      }
     },
     "localname": "SalesRevenueNetMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "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]",
        "terseLabel": "Summary of Accrued Expenses"
       }
      }
     },
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccruedExpensesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock": {
     "auth_ref": [
      "r34",
      "r958",
      "r959"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of accumulated other comprehensive income (loss).",
        "label": "Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block]",
        "terseLabel": "Changes in Balance of Accumulated Other Comprehensive Loss"
       }
      }
     },
     "localname": "ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable": {
     "auth_ref": [
      "r93"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the major classes of acquired finite-lived intangible assets showing the amount, any significant residual value, weighted average amortization period, and other characteristics. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company.",
        "label": "Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table]"
       }
      }
     },
     "localname": "ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfAcquiredIdentifiableIntangibleAssetDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock": {
     "auth_ref": [
      "r93"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the characteristics, including initial carrying value, residual amount, weighted average useful life, of finite-lived intangible assets acquired during the period by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company.",
        "label": "Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]",
        "terseLabel": "Summary of Acquired Identifiable Intangible Asset"
       }
      }
     },
     "localname": "ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "auth_ref": [
      "r163",
      "r164",
      "r585"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities.",
        "label": "Schedule of Business Acquisitions, by Acquisition [Table]",
        "terseLabel": "Schedule of Business Acquisitions, by Acquisition [Table]"
       }
      }
     },
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsAdditionalInformationDetail",
      "http://astro-med.com/role/AcquisitionsSummaryOfPurchasePriceOfAcquisitionAllocatedOnBasisOfFairValueDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfCapitalizationEquityLineItems": {
     "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": "Schedule of Capitalization, Equity [Line Items]",
        "terseLabel": "Schedule of Capitalization, Equity [Line Items]"
       }
      }
     },
     "localname": "ScheduleOfCapitalizationEquityLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfCapitalizationEquityTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summarization of information required and determined to be disclosed concerning the equity component of the capitalization of the entity. The table may be detailed by subsidiary (legal entity) (if applicable) and include information by component of equity as may be included in the Statement of Changes in Shareholders' Equity.",
        "label": "Schedule of Capitalization, Equity [Table]",
        "terseLabel": "Schedule of Capitalization, Equity [Table]"
       }
      }
     },
     "localname": "ScheduleOfCapitalizationEquityTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of supplemental cash flow information for the periods presented.",
        "label": "Schedule of Cash Flow, Supplemental Disclosures [Table Text Block]",
        "verboseLabel": "Supplemental Cash Flow Information Related To Leases"
       }
      }
     },
     "localname": "ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock": {
     "auth_ref": [
      "r147"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of cost recognized for award under share-based payment arrangement by plan. Includes, but is not limited to, related tax benefit.",
        "label": "Schedule of Compensation Cost for Share-based Payment Arrangements, Allocation of Share-based Compensation Costs by Plan [Table Text Block]",
        "terseLabel": "Share-Based Compensation Expense"
       }
      }
     },
     "localname": "ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r158"
     ],
     "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]",
        "terseLabel": "Components of Provision for Income Taxes"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDebtTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.",
        "label": "Schedule of Debt [Table Text Block]",
        "terseLabel": "Schedule of Long Term Debt in the Accompanying Condensed Consolidated Balance Sheets"
       }
      }
     },
     "localname": "ScheduleOfDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r155"
     ],
     "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]",
        "terseLabel": "Tax Effects of Temporary Differences that gave Rise to Significant Portions of Deferred Tax Assets and Liabilities"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock": {
     "auth_ref": [
      "r183",
      "r187",
      "r602"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments.",
        "label": "Derivative Instruments, Gain (Loss) [Table Text Block]",
        "terseLabel": "Schedule of Impact of the Derivative Instruments in the Condensed Consolidated Financial Statements"
       }
      }
     },
     "localname": "ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/DerivativeFinancialInstrumentsAndRiskManagementTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r153"
     ],
     "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]",
        "verboseLabel": "Reconciliation of income tax provision/(benefit) With The Amount Computed By Applying The Statutory Federal Income Tax Rate To The Income Before Income Tax Provision/(benefit)"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock": {
     "auth_ref": [
      "r93"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of finite-lived intangible assets acquired as part of a business combination or through an asset purchase, by major class and in total, including the value of the asset acquired, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period.",
        "label": "Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]",
        "terseLabel": "Summary of Fair Value of the Acquired Identifiable Intangible Assets and Related Estimated Useful Lives"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "auth_ref": [
      "r93",
      "r96",
      "r682"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Schedule of Finite-Lived Intangible Assets [Table]",
        "terseLabel": "Schedule of Finite-Lived Intangible Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r93",
      "r96"
     ],
     "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]",
        "terseLabel": "Fair Value of Acquired Identifiable Intangible Assets and Related Estimated Useful Lives"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock": {
     "auth_ref": [
      "r820"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of income before income tax between domestic and foreign jurisdictions.",
        "label": "Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block]",
        "terseLabel": "Components of Income before Income Taxes"
       }
      }
     },
     "localname": "ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r0",
      "r13",
      "r14",
      "r15"
     ],
     "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]",
        "terseLabel": "Components of Inventories"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/InventoriesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": {
     "auth_ref": [
      "r117"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt.",
        "label": "Schedule of Maturities of Long-term Debt [Table Text Block]",
        "terseLabel": "Schedule of Required Principal Payments Remaining on Long Term Debt Outstanding"
       }
      }
     },
     "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": {
     "auth_ref": [
      "r115"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability.",
        "label": "Schedule of Product Warranty Liability [Table Text Block]",
        "terseLabel": "Activity in Product Warranty Liability"
       }
      }
     },
     "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ProductWarrantyLiabilityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": {
     "auth_ref": [
      "r167"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.",
        "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]",
        "terseLabel": "Summary of Purchase Price of Acquisition Allocated on Basis of Fair Value"
       }
      }
     },
     "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock": {
     "auth_ref": [
      "r42",
      "r88"
     ],
     "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]",
        "terseLabel": "Summary of Selected Financial Information by Geographic Area"
       }
      }
     },
     "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": {
     "auth_ref": [
      "r37",
      "r88"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of 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 Revenues from External Customers and Long-Lived Assets [Table]",
        "terseLabel": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfSelectedFinancialInformationByGeographicAreaDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "auth_ref": [
      "r82",
      "r83",
      "r85",
      "r91"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. 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]",
        "terseLabel": "Schedule of Segment Reporting Information, by Segment [Table]"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "auth_ref": [
      "r82",
      "r83",
      "r85",
      "r91"
     ],
     "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]",
        "terseLabel": "Net Sales and Segment Operating Profit (loss) for Each Reporting Segment"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r505",
      "r506",
      "r508",
      "r509",
      "r510",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about share-based payment arrangement.",
        "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]",
        "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail",
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock": {
     "auth_ref": [
      "r148"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of option exercise prices, by grouped ranges, including the upper and lower limits of the price range, the number of shares under option, weighted average exercise price and remaining contractual option terms.",
        "label": "Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range [Table Text Block]",
        "terseLabel": "Summary of Options Outstanding"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r138",
      "r142",
      "r143"
     ],
     "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 Compensation, Stock Options, Activity [Table Text Block]",
        "terseLabel": "Aggregated Information Regarding Stock Options Granted"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year.",
        "label": "Schedule of Share-based Compensation, Restricted Stock and Restricted Stock Units Activity [Table Text Block]",
        "terseLabel": "Aggregated Information Regarding RSUs and RSAs Granted"
       }
      }
     },
     "localname": "ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfStockByClassTable": {
     "auth_ref": [
      "r121",
      "r122",
      "r123",
      "r125",
      "r126",
      "r127",
      "r128",
      "r129",
      "r130",
      "r131",
      "r257",
      "r258",
      "r259",
      "r333",
      "r463",
      "r464",
      "r465",
      "r467",
      "r471",
      "r476",
      "r478",
      "r769",
      "r802",
      "r817"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule detailing information related to equity by class of stock. Class of stock includes common, convertible, and preferred stocks which are not redeemable or redeemable solely at the option of the issuer. It also includes preferred stock with redemption features that are solely within the control of the issuer and mandatorily redeemable stock if redemption is required to occur only upon liquidation or termination of the reporting entity.",
        "label": "Schedule of Stock by Class [Table]",
        "terseLabel": "Schedule of Stock by Class [Table]"
       }
      }
     },
     "localname": "ScheduleOfStockByClassTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock": {
     "auth_ref": [
      "r785",
      "r942"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the change in unrecognized tax benefits.",
        "label": "Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block]",
        "terseLabel": "Changes in Balance of Unrecognized Tax Benefits, Excluding Interest and Penalties"
       }
      }
     },
     "localname": "ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [
      "r96"
     ],
     "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]",
        "terseLabel": "Summary of Estimated Amortization Expense"
       }
      }
     },
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r339",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r363",
      "r365",
      "r371",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r412",
      "r413",
      "r763",
      "r973"
     ],
     "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]",
        "terseLabel": "Segments [Domain]"
       }
      }
     },
     "localname": "SegmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "localname": "SegmentReportingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r339",
      "r340",
      "r341",
      "r351",
      "r354",
      "r359",
      "r363",
      "r364",
      "r365",
      "r366",
      "r367",
      "r370",
      "r371",
      "r372"
     ],
     "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]",
        "terseLabel": "Nature of Operations, Segment Reporting and Geographical Information"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentReportingInformationLineItems": {
     "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": "Segment Reporting Information [Line Items]",
        "terseLabel": "Segment Reporting Information [Line Items]"
       }
      }
     },
     "localname": "SegmentReportingInformationLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SelfInsuranceReservePolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for self-insurance reserves, including, but not limited to incurred but not reported reserves (IBNR).",
        "label": "Self Insurance Reserve [Policy Text Block]",
        "verboseLabel": "Self-Insurance"
       }
      }
     },
     "localname": "SelfInsuranceReservePolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingAndMarketingExpense": {
     "auth_ref": [],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 8.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services.",
        "label": "Selling and Marketing Expense",
        "terseLabel": "Selling and Marketing"
       }
      }
     },
     "localname": "SellingAndMarketingExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SellingAndMarketingExpenseMember": {
     "auth_ref": [
      "r40"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing selling and marketing expense.",
        "label": "Selling and Marketing Expense [Member]",
        "terseLabel": "Selling and Marketing Expense [Member]"
       }
      }
     },
     "localname": "SellingAndMarketingExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r62"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 16.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Share-based Compensation",
        "terseLabel": "Share-Based Compensation",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows",
      "http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation [Abstract]"
       }
      }
     },
     "localname": "ShareBasedCompensationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate": {
     "auth_ref": [
      "r148"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Discount rate from fair value on purchase date that participants pay for shares.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Discount from Market Price, Purchase Date",
        "terseLabel": "Employee Stock Purchase Plan discount rate"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r525"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period",
        "negatedLabel": "Forfeited, Restricted Stock Units and Restricted Stock Awards"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r525"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value",
        "terseLabel": "Forfeited, Weighted Average Grant Date Fair Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r523"
     ],
     "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": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "terseLabel": "Granted, Restricted Stock Units and Restricted Stock Awards"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r523"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued 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": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Granted, Weighted Average Grant Date Fair Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "auth_ref": [
      "r520",
      "r521"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "periodEndLabel": "Ending balance, Outstanding Restricted Stock Units and Restricted Stock Awards",
        "periodStartLabel": "Beginning balance, Outstanding Restricted Stock Units and Restricted Stock Awards",
        "terseLabel": "Number of unvested shares"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r520",
      "r521"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value",
        "periodEndLabel": "Ending balance, Weighted Average Grant Date Fair Value",
        "periodStartLabel": "Beginning balance, Weighted Average Grant Date Fair Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r524"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "negatedLabel": "Vested, Restricted Stock Units and Restricted Stock Awards"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r524"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Vested, Weighted Average Grant Date Fair Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "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": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail",
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "auth_ref": [
      "r784"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares authorized for issuance under share-based payment arrangement.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized",
        "terseLabel": "Shares authorized for grant under the Plan"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r148"
     ],
     "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": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant",
        "terseLabel": "Shares available for grant under the Plan"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r514"
     ],
     "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": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number",
        "terseLabel": "Number of shares exercisable, total"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "auth_ref": [
      "r527"
     ],
     "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": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value",
        "terseLabel": "Aggregate intrinsic value of options exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod": {
     "auth_ref": [
      "r519"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options or other stock instruments for which the right to exercise has lapsed under the terms of the plan agreements.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Expirations in Period",
        "negatedLabel": "Canceled, Number of Options"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": {
     "auth_ref": [
      "r518"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period",
        "negatedLabel": "Forfeited, Number of Options"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [
      "r516"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross number of share options (or share units) granted during the period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross",
        "terseLabel": "Granted, Number of Options",
        "verboseLabel": "Number of options granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r512",
      "r513"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number",
        "periodEndLabel": "Ending balance, Number of Options",
        "periodStartLabel": "Beginning balance, Number of Options",
        "terseLabel": "Number of shares outstanding",
        "verboseLabel": "Number of shares outstanding, total"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail",
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r512",
      "r513"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "periodEndLabel": "Ending balance, Weighted-Average Exercise Price Per Share",
        "periodStartLabel": "Beginning balance, Weighted-Average Exercise Price Per Share"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r508",
      "r509",
      "r510",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Equity Award [Domain]",
        "terseLabel": "Equity Award [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingRsusAndRsasGrantedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r517"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price",
        "verboseLabel": "Exercised, Weighted-Average Exercise Price Per Share"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r519"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options of the plan that expired.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Expirations in Period, Weighted Average Exercise Price",
        "verboseLabel": "Cancelled, Weighted-Average Exercise Price Per Share"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r518"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price",
        "verboseLabel": "Forfeited, Weighted-Average Exercise Price Per Share"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r516"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price",
        "verboseLabel": "Granted, Weighted-Average Exercise Price Per Share"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r511",
      "r530",
      "r531",
      "r532",
      "r533",
      "r536",
      "r544",
      "r545"
     ],
     "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 Compensation, Option and Incentive Plans Policy [Policy Text Block]",
        "terseLabel": "Share-Based Compensation"
       }
      }
     },
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis": {
     "auth_ref": [
      "r145"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by range of option prices pertaining to options granted.",
        "label": "Exercise Price Range [Axis]",
        "terseLabel": "Exercise Price Range [Axis]"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain": {
     "auth_ref": [
      "r146"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Supplementary information on outstanding and exercisable share awards as of the balance sheet date which stratifies outstanding options by ranges of exercise prices.",
        "label": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Domain]",
        "terseLabel": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit": {
     "auth_ref": [
      "r146"
     ],
     "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": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Lower Range Limit",
        "terseLabel": "Outstanding Range of Exercise prices, Lower Limit"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions": {
     "auth_ref": [
      "r141"
     ],
     "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": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Number of Exercisable Options",
        "terseLabel": "Exercisable, Number of shares"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions": {
     "auth_ref": [
      "r139"
     ],
     "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": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Number of Outstanding Options",
        "terseLabel": "Outstanding, Number of shares"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit": {
     "auth_ref": [
      "r146"
     ],
     "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": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Upper Range Limit",
        "terseLabel": "Outstanding Range of Exercise prices, Upper Limit"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareRepurchaseProgramAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by share repurchase program.",
        "label": "Share Repurchase Program [Axis]",
        "terseLabel": "Share Repurchase Program [Axis]"
       }
      }
     },
     "localname": "ShareRepurchaseProgramAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareRepurchaseProgramDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the share repurchase program.",
        "label": "Share Repurchase Program [Domain]",
        "terseLabel": "Share Repurchase Program [Domain]"
       }
      }
     },
     "localname": "ShareRepurchaseProgramDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "auth_ref": [
      "r148"
     ],
     "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": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value",
        "terseLabel": "Aggregate intrinsic value of option exercised"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r148"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term",
        "terseLabel": "Exercisable Remaining Contractual Life"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1": {
     "auth_ref": [
      "r140"
     ],
     "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": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price",
        "terseLabel": "Exercisable, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1": {
     "auth_ref": [
      "r139"
     ],
     "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": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Outstanding Options, Weighted Average Exercise Price",
        "terseLabel": "Outstanding, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r144"
     ],
     "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": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Outstanding Options, Weighted Average Remaining Contractual Term",
        "terseLabel": "Outstanding Remaining Contractual Life"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationSummaryOfOptionsOutstandingDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.",
        "label": "Shares, Outstanding",
        "periodEndLabel": "Ending Balance, Shares",
        "periodStartLabel": "Beginning Balance, Shares"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r245",
      "r339",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r363",
      "r365",
      "r371",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r410",
      "r412",
      "r413",
      "r763",
      "r973"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]",
        "terseLabel": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationAdditionalInformationDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationNetSalesAndSegmentOperatingProfitLossForEachReportingSegmentDetail",
      "http://astro-med.com/role/NatureOfOperationsSegmentReportingAndGeographicalInformationSummaryOfOtherInformationBySegmentDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementClassOfStockAxis": {
     "auth_ref": [
      "r257",
      "r258",
      "r259",
      "r292",
      "r323",
      "r324",
      "r326",
      "r328",
      "r333",
      "r334",
      "r378",
      "r420",
      "r423",
      "r424",
      "r425",
      "r431",
      "r432",
      "r463",
      "r464",
      "r467",
      "r471",
      "r478",
      "r623",
      "r730",
      "r802",
      "r817",
      "r830"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by the different classes of stock of the entity.",
        "label": "Class of Stock [Axis]",
        "verboseLabel": "Class of Stock [Axis]"
       }
      }
     },
     "localname": "StatementClassOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesLeaseCostInformationDetail",
      "http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail",
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail",
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r28",
      "r124",
      "r242",
      "r277",
      "r278",
      "r279",
      "r305",
      "r306",
      "r307",
      "r309",
      "r317",
      "r319",
      "r332",
      "r382",
      "r479",
      "r541",
      "r542",
      "r543",
      "r573",
      "r574",
      "r614",
      "r637",
      "r638",
      "r639",
      "r640",
      "r641",
      "r643",
      "r673",
      "r702",
      "r703",
      "r704"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]",
        "terseLabel": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail",
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "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]",
        "terseLabel": "Statement [Line Items]",
        "verboseLabel": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity",
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesLeaseCostInformationDetail",
      "http://astro-med.com/role/LeasesSupplementalCashFlowInformationDetail",
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail",
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail",
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail",
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]",
        "verboseLabel": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Comprehensive Income [Abstract]"
       }
      }
     },
     "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r305",
      "r306",
      "r307",
      "r332",
      "r681"
     ],
     "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]",
        "terseLabel": "Statement [Table]",
        "verboseLabel": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity",
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesAdditionalInformationDetail",
      "http://astro-med.com/role/LeasesLeaseCostInformationDetail",
      "http://astro-med.com/role/LeasesSupplementalCashFlowInformationDetail",
      "http://astro-med.com/role/PaycheckProtectionProgramLoanAdditionalInformationDetail",
      "http://astro-med.com/role/PropertyPlantAndEquipmentAdditionalInformationDetail",
      "http://astro-med.com/role/PropertyPlantAndEquipmentSummaryOfPropertyPlantAndEquipmentDetail",
      "http://astro-med.com/role/RevenueRecognitionAdditionalInformationDetail",
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": {
     "auth_ref": [
      "r6",
      "r7",
      "r124",
      "r131"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued during the period as a result of an employee stock purchase plan.",
        "label": "Stock Issued During Period, Shares, Employee Stock Purchase Plans",
        "terseLabel": "Shares purchase under Employee Stock Purchase Plan"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross": {
     "auth_ref": [
      "r124",
      "r131"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of shares issued during the period, including shares forfeited, as a result of Restricted Stock Awards.",
        "label": "Stock Issued During Period, Shares, Restricted Stock Award, Gross",
        "terseLabel": "Restricted Stock Awards Vested, net, Shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r6",
      "r7",
      "r124",
      "r131",
      "r517"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period",
        "negatedLabel": "Exercised, Number of Options",
        "terseLabel": "Employee Option Exercises, Shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity",
      "http://astro-med.com/role/ShareBasedCompensationAggregatedInformationRegardingStockOptionsGrantedDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross": {
     "auth_ref": [
      "r6",
      "r7",
      "r124",
      "r131"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate value of stock related to Restricted Stock Awards issued during the period.",
        "label": "Stock Issued During Period, Value, Restricted Stock Award, Gross",
        "terseLabel": "Restricted Stock Awards Vested, net"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "auth_ref": [
      "r28",
      "r124",
      "r131"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of stock issued as a result of the exercise of stock options.",
        "label": "Stock Issued During Period, Value, Stock Options Exercised",
        "terseLabel": "Employee Option Exercises"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockOptionPlanExpense": {
     "auth_ref": [
      "r63"
     ],
     "calculation": {
      "http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_ShareBasedCompensation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for option under share-based payment arrangement.",
        "label": "Stock or Unit Option Plan Expense",
        "terseLabel": "Stock Options"
       }
      }
     },
     "localname": "StockOptionPlanExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareBasedCompensationShareBasedCompensationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r7",
      "r10",
      "r11",
      "r89",
      "r789",
      "r819",
      "r840",
      "r957"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 30.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": "Stockholders' Equity Attributable to Parent",
        "periodEndLabel": "Ending Balance",
        "periodStartLabel": "Beginning Balance",
        "totalLabel": "TOTAL SHAREHOLDERS' EQUITY"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AccumulatedOtherComprehensiveLossChangesInBalanceOfAccumulatedOtherComprehensiveLossDetail",
      "http://astro-med.com/role/ConsolidatedBalanceSheets",
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Attributable to Parent [Abstract]",
        "terseLabel": "SHAREHOLDERS' EQUITY"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r134",
      "r291",
      "r464",
      "r466",
      "r467",
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r477",
      "r479",
      "r605"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.",
        "label": "Stockholders' Equity Note Disclosure [Text Block]",
        "terseLabel": "Shareholders' Equity"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ShareholdersEquity"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r644",
      "r674"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Axis]"
       }
      }
     },
     "localname": "SubsequentEventTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r644",
      "r674"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Domain]"
       }
      }
     },
     "localname": "SubsequentEventTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail",
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental Cash Flow Information [Abstract]",
        "verboseLabel": "Supplemental Information:"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SupplierConcentrationRiskMember": {
     "auth_ref": [
      "r74"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the percentage that purchases in the period from one or more significant suppliers is to cost of goods or services, as defined by the entity, such as total cost of sales or services, product line cost of sales or services, segment cost of sales or services. Risk is the materially adverse effects of loss of a material supplier or a supplier of critically needed goods or services.",
        "label": "Supplier Concentration Risk [Member]",
        "terseLabel": "Vendor [Member]"
       }
      }
     },
     "localname": "SupplierConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConcentrationOfRiskAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TaxesPayableCurrentAndNoncurrent": {
     "auth_ref": [
      "r2",
      "r213",
      "r227"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 17.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes.",
        "label": "Taxes Payable",
        "terseLabel": "Income Taxes Payable"
       }
      }
     },
     "localname": "TaxesPayableCurrentAndNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TrademarksAndTradeNamesMember": {
     "auth_ref": [
      "r169"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style, or rights either acquired through registration of a business name to gain or protect exclusive use thereof.",
        "label": "Trademarks and Trade Names [Member]"
       }
      }
     },
     "localname": "TrademarksAndTradeNamesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/AcquisitionsSummaryOfFairValueOfTheAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TrademarksMember": {
     "auth_ref": [
      "r169"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style.",
        "label": "Trademarks [Member]",
        "terseLabel": "Trademarks [Member]"
       }
      }
     },
     "localname": "TrademarksMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TradingActivityByTypeAxis": {
     "auth_ref": [
      "r190"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of trading activity.",
        "label": "Trading Activity [Axis]"
       }
      }
     },
     "localname": "TradingActivityByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TradingActivityByTypeDomain": {
     "auth_ref": [
      "r190"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gains and losses on trading activities (including both derivative and nonderivative instruments) recognized in the statement of financial performance, separately by major types of items (such as fixed income/interest rates, foreign exchange, equity, commodity, and credit).",
        "label": "Trading Activity, by Type [Domain]"
       }
      }
     },
     "localname": "TradingActivityByTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockMember": {
     "auth_ref": [
      "r27",
      "r132"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Shares of an entity that have been repurchased by the entity. This stock has no voting rights and receives no dividends. Note that treasury stock may be recorded at its total cost or separately as par (or stated) value and additional paid in capital. Classified within stockholders' equity if nonredeemable or redeemable solely at the option of the issuer. Classified within temporary equity if redemption is outside the control of the issuer.",
        "label": "Treasury Stock [Member]",
        "terseLabel": "Treasury Stock [Member]"
       }
      }
     },
     "localname": "TreasuryStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockShares": {
     "auth_ref": [
      "r27",
      "r132"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.",
        "label": "Treasury Stock, Shares",
        "terseLabel": "Treasury Stock, Shares"
       }
      }
     },
     "localname": "TreasuryStockShares",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockValue": {
     "auth_ref": [
      "r27",
      "r132",
      "r133"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedBalanceSheets": {
       "order": 35.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.",
        "label": "Treasury Stock, Value",
        "negatedLabel": "Treasury Stock, at Cost"
       }
      }
     },
     "localname": "TreasuryStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TypeOfAdoptionMember": {
     "auth_ref": [
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r308",
      "r309",
      "r310",
      "r311",
      "r320",
      "r376",
      "r377",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r541",
      "r542",
      "r543",
      "r571",
      "r572",
      "r573",
      "r574",
      "r587",
      "r588",
      "r589",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616",
      "r617",
      "r624",
      "r625",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r646",
      "r647",
      "r651",
      "r652",
      "r653",
      "r654",
      "r668",
      "r669",
      "r670",
      "r671",
      "r672",
      "r673",
      "r683",
      "r684",
      "r685",
      "r700",
      "r701",
      "r702",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r710",
      "r711"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amendment to accounting standards.",
        "label": "Type of Adoption [Domain]",
        "terseLabel": "Type of Adoption [Domain]",
        "verboseLabel": "Type of Adoption [Domain]"
       }
      }
     },
     "localname": "TypeOfAdoptionMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/LeasesAdditionalInformationDetail",
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TypeOfArrangementAxis": {
     "auth_ref": [
      "r950"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations.",
        "label": "Type of Arrangement and Non-arrangement Transactions [Axis]",
        "terseLabel": "Type of Arrangement and Non-arrangement Transactions [Axis]",
        "verboseLabel": "Type of Arrangement and Non-arrangement Transactions [Axis]"
       }
      }
     },
     "localname": "TypeOfArrangementAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IntangibleAssetsAdditionalInformationDetail",
      "http://astro-med.com/role/IntangibleAssetsFairValueOfAcquiredIdentifiableIntangibleAssetsAndRelatedEstimatedUsefulLivesDetail",
      "http://astro-med.com/role/RoyaltyObligationAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_UnrecognizedTaxBenefits": {
     "auth_ref": [
      "r548",
      "r557"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of unrecognized tax benefits.",
        "label": "Unrecognized Tax Benefits",
        "periodEndLabel": "Balance, end of the year",
        "periodStartLabel": "Balance ,beginning of the year",
        "terseLabel": "Recognized tax benefits excluding interest and penalties"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://astro-med.com/role/IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued": {
     "auth_ref": [
      "r556"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount accrued for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.",
        "label": "Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued",
        "terseLabel": "Accrued potential interest and penalties"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense": {
     "auth_ref": [
      "r556"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.",
        "label": "Unrecognized Tax Benefits, Income Tax Penalties and Interest Expense",
        "terseLabel": "Recognized (benefit) expense related to interest and penalties"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions": {
     "auth_ref": [
      "r559"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.",
        "label": "Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions",
        "terseLabel": "Increases in current period tax positions"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions": {
     "auth_ref": [
      "r558"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions taken in prior period tax returns.",
        "label": "Unrecognized Tax Benefits, Increase Resulting from Prior Period Tax Positions",
        "terseLabel": "Increases in prior period tax positions"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations": {
     "auth_ref": [
      "r560"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from lapses of applicable statutes of limitations.",
        "label": "Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations",
        "negatedLabel": "Reductions related to lapse of statutes of limitations",
        "terseLabel": "Unrecognized tax benefits as a result of the expiration of the statute of limitations"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://astro-med.com/role/IncomeTaxesChangeInBalanceOfUnrecognizedTaxBenefitsExcludingInterestAndPenaltiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnusualOrInfrequentItemAxis": {
     "auth_ref": [
      "r50"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by an event or transaction that is unusual in nature or infrequent in occurrence, or both.",
        "label": "Unusual or Infrequent Item, or Both [Axis]"
       }
      }
     },
     "localname": "UnusualOrInfrequentItemAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_UnusualOrInfrequentItemDomain": {
     "auth_ref": [
      "r50"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Event or transaction that is unusual in nature or infrequent in occurrence, or both.",
        "label": "Unusual or Infrequent Item, or Both [Domain]"
       }
      }
     },
     "localname": "UnusualOrInfrequentItemDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/EmployeeRetentionCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r78",
      "r79",
      "r80",
      "r335",
      "r336",
      "r337",
      "r338"
     ],
     "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]",
        "terseLabel": "Use of Estimates"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesBalance": {
     "auth_ref": [
      "r298",
      "r303"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Amount",
        "periodEndLabel": "Balance at End of Year",
        "periodStartLabel": "Balance at Beginning of Year"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesBalance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense": {
     "auth_ref": [
      "r301"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in valuation and qualifying accounts and reserves from charge to cost and expense.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Additions, Charge to Cost and Expense",
        "terseLabel": "Provision/(Benefit) Charged to Operations"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesChargedToCostAndExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesDeductions": {
     "auth_ref": [
      "r302"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Deduction",
        "negatedLabel": "Deductions"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesDeductions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesDomain": {
     "auth_ref": [
      "r298",
      "r299",
      "r300",
      "r302",
      "r303"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]",
        "terseLabel": "SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesTypeAxis": {
     "auth_ref": [
      "r298",
      "r299",
      "r300",
      "r302",
      "r303"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]",
        "terseLabel": "SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ScheduleIiValuationAndQualifyingAccountsAndReservesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableRateAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of variable rate.",
        "label": "Variable Rate [Axis]",
        "terseLabel": "Variable Rate [Axis]"
       }
      }
     },
     "localname": "VariableRateAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableRateDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.",
        "label": "Variable Rate [Domain]",
        "terseLabel": "Variable Rate [Domain]"
       }
      }
     },
     "localname": "VariableRateDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/CreditAgreementAndLongTermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "auth_ref": [
      "r831"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 18.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.",
        "label": "Weighted Average Number Diluted Shares Outstanding Adjustment",
        "terseLabel": "Dilutive Effect of Common Stock Equivalents"
       }
      }
     },
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r322",
      "r328"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "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": "Weighted Average Number of Shares Outstanding, Diluted",
        "totalLabel": "Weighted Average Number of Common Shares Outstanding\u2014Diluted"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r321",
      "r328"
     ],
     "calculation": {
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome": {
       "order": 17.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": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Weighted Average Number of Common Shares Outstanding\u2014Basic"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://astro-med.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 7
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16373-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226317&loc=d3e202-110218",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=126905981&loc=d3e2420-110228",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2921-110230",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=27011434&loc=d3e125687-122742",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "https://asc.fasb.org/topic&trid=2155823",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "https://asc.fasb.org/topic&trid=2144648",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907644&loc=d3e11281-110244",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12524-110249",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "((c)(2))",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "((c)(3))",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "460",
   "URI": "https://asc.fasb.org/topic&trid=2155896",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123465755&loc=d3e1835-112601",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "40",
   "SubTopic": "50",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126972273&loc=d3e12317-112629",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "40",
   "SubTopic": "50",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126972273&loc=d3e12355-112629",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "https://asc.fasb.org/topic&trid=2208564",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(CFRR 211.02)",
   "Topic": "480",
   "URI": "https://asc.fasb.org/extlink&oid=122040564&loc=d3e177068-122764",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=65888546&loc=d3e21300-112643",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21553-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21475-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21484-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21488-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21506-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21521-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21538-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=6405813&loc=d3e23239-112655",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=6405834&loc=d3e23315-112656",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "https://asc.fasb.org/topic&trid=2208762",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "710",
   "URI": "https://asc.fasb.org/topic&trid=2127225",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "712",
   "URI": "https://asc.fasb.org/topic&trid=2197446",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "715",
   "URI": "https://asc.fasb.org/topic&trid=2235017",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)-(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=SL79508275-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "https://asc.fasb.org/topic&trid=2228938",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "https://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32632-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Subparagraph": "(a)-(d)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=6909625&loc=d3e227-128457",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123586518&loc=d3e1043-128460",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "37",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123455525&loc=d3e2207-128464",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4845-128472",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4845-128472",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5227-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a),20,24)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966197&loc=d3e6578-128477",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966197&loc=d3e6613-128477",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126975305&loc=d3e6927-128479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "805",
   "URI": "https://asc.fasb.org/topic&trid=2303972",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=d3e5614-111684",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5579240-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5579245-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)(ii)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=d3e41620-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=d3e41620-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=d3e41638-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624186-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624186-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=d3e41675-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "815",
   "URI": "https://asc.fasb.org/topic&trid=2229140",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19279-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=SL6742756-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "60",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=7493716&loc=d3e21868-110260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13279-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13467-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13476-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28541-108399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28551-108399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "https://asc.fasb.org/extlink&oid=126941158&loc=d3e41242-110953",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(13))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(1))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(2))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.17)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.9)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Subparagraph": "(c)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(15)(b)(2))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(15)(b)(1))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(15))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.(a),19)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(8))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=116884095&loc=d3e14764-158437",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(cc)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=116884095&loc=d3e14764-158437",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "985",
   "URI": "https://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "https://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "https://asc.fasb.org/extlink&oid=6501960&loc=d3e128487-111756",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(15))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(16))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(18))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(9))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(2))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(dd)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669686-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29,30)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e689-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL116659661-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(210.5-03(11))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(21))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(24))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3367-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3000-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4297-108586",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(c))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(e)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(n))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column B))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column C(1)))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a),(b),(c)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column C(2)))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column C)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column D))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column E))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(4)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1448-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1505-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1252-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1278-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1337-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e681-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e3842-109258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "270",
   "URI": "https://asc.fasb.org/extlink&oid=126900757&loc=d3e543-108305",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=6373374&loc=d3e70478-108055",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8657-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669686-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e557-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8844-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124507222&loc=d3e1436-108581",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "34",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8981-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9031-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9054-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "https://asc.fasb.org/topic&trid=2134510",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(4)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=116847112&loc=d3e4556-108314",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "https://asc.fasb.org/topic&trid=2126998",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "340",
   "URI": "https://asc.fasb.org/extlink&oid=126905575&loc=SL49131252-203054",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "340",
   "URI": "https://asc.fasb.org/extlink&oid=126905575&loc=SL49131252-203054",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(4))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/subtopic&trid=2144439",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/subtopic&trid=2144471",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(8))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.3)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6036836-161870",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496180-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.8)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r480": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130531-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r481": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130532-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130533-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r484": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r485": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r489": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130558-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r491": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130543-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r494": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130550-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "https://asc.fasb.org/topic&trid=49130388",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r496": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r497": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r498": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r499": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=114868883&loc=SL114871943-224233",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r500": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r501": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r502": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(03)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r503": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r504": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=SL116886442-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4549-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r507": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r509": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "220",
   "URI": "https://asc.fasb.org/topic&trid=2134417",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r511": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r512": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r515": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r518": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r520": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r521": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r522": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r523": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r524": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r525": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r526": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r527": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r528": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r529": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r531": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r532": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r534": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r535": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r536": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(v)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r537": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r538": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r539": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r540": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(l)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r541": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r542": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r543": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r544": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.D.2.Q6)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r545": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "https://asc.fasb.org/topic&trid=2228938",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r546": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "35",
   "Subparagraph": "(a)",
   "Topic": "720",
   "URI": "https://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r547": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "35",
   "Subparagraph": "(b)",
   "Topic": "720",
   "URI": "https://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r548": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=SL37586934-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r549": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e32247-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r550": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e32280-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r551": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r552": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r553": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r554": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r555": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r556": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r557": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r558": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r559": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r560": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(4)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r561": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r562": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r563": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r564": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r565": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r566": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32847-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r567": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r568": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r569": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r570": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r571": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r572": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r573": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r574": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r575": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r576": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r577": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r578": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r579": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r580": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r581": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r582": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r583": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r584": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "https://asc.fasb.org/topic&trid=2144680",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r585": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4946-128472",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r586": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4946-128472",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r587": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092918&loc=SL128093175-196984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r588": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092918&loc=SL128093175-196984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r589": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092918&loc=SL128093175-196984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r590": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)(1)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126975305&loc=d3e6927-128479",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r591": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569616-111683",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r592": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r593": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r594": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r595": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r596": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(3)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r597": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r598": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r599": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r600": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r601": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r602": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624181-113959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r603": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=121577181&loc=SL110061190-113977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r604": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126731327&loc=d3e90205-114008",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r605": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126731327&loc=SL126733271-114008",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r606": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r607": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r608": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r609": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(b)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r610": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(b)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r611": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r612": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r613": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r614": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r615": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(4)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r616": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r617": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r618": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r619": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r620": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r621": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594809&loc=d3e13220-108610",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r622": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13433-108611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r623": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r624": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL120254526-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r625": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL120254526-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r626": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r627": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r628": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r629": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r630": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL122642865-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r631": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL122642865-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r632": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=126980362&loc=d3e28228-110885",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r633": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=123602790&loc=d3e30226-110892",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r634": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=125521441&loc=d3e30690-110894",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r635": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=124440516&loc=d3e30840-110895",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r636": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r637": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r638": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r639": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r640": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r641": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r642": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r643": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r644": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32618-110901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r645": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "830",
   "URI": "https://asc.fasb.org/topic&trid=2175825",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r646": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "832",
   "URI": "https://asc.fasb.org/extlink&oid=128342835&loc=SL128342857-244232",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r647": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "832",
   "URI": "https://asc.fasb.org/extlink&oid=128342835&loc=SL128342857-244232",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r648": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r649": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3044-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r650": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124429444&loc=SL124452920-239629",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r651": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r652": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r653": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r654": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r655": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r656": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r657": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918631-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r658": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r659": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4273-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r660": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r661": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r662": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r663": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/subtopic&trid=77888251",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r664": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=124258985&loc=SL77919352-209981",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r665": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=124258985&loc=SL119206284-209981",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r666": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=124258985&loc=SL117410129-209981",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r667": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=124258985&loc=SL117410129-209981",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r668": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL122150809-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r669": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4297-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r670": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r671": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r672": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(01)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r673": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r674": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r675": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r676": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r677": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r678": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r679": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "https://asc.fasb.org/extlink&oid=126937589&loc=SL119991595-234733",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=SL98516268-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r680": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "330",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=6471895&loc=d3e55923-109411",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r681": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "https://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r682": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r683": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r684": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r685": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r686": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "340",
   "Topic": "928",
   "URI": "https://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r687": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "440",
   "Topic": "928",
   "URI": "https://asc.fasb.org/extlink&oid=6473578&loc=d3e63223-108013",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r688": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r689": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(23))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "https://asc.fasb.org/topic&trid=2122369",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r690": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(26))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r691": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r692": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r693": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r694": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r695": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r696": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(22))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r697": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r698": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r699": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r700": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r701": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r702": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r703": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r704": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r705": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r706": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r707": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r708": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r709": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iv)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r710": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r711": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r712": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r713": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "https://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r714": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=126942805&loc=d3e3115-115594",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r715": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "440",
   "Subparagraph": "(a)",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r716": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=d3e99779-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r717": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=d3e99893-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r718": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=SL120174063-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r719": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "https://asc.fasb.org/extlink&oid=126900757&loc=d3e777-108305",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r720": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r721": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r722": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r723": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r724": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r725": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r726": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r727": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r728": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "https://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r729": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "https://asc.fasb.org/extlink&oid=126945304&loc=d3e27327-108691",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6327-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r730": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "1402",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r731": {
   "Footnote": "2",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r732": {
   "Footnote": "4",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "29",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r733": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "Column B",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r734": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "Column C",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r735": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "Column D",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r736": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "Column E",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r737": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "Column F",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r738": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "Column G",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r739": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "Column H",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r740": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "Column I",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r741": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "09",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r742": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "13",
   "Subparagraph": "(4)(i)",
   "Subsection": "01",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r743": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "13",
   "Subparagraph": "(4)(i)",
   "Subsection": "02",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r744": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "13",
   "Subparagraph": "(4)(iii)(A)",
   "Subsection": "01",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r745": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "13",
   "Subparagraph": "(4)(iii)(A)",
   "Subsection": "02",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r746": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "13",
   "Subparagraph": "(4)(iii)(B)",
   "Subsection": "01",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r747": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "13",
   "Subparagraph": "(4)(iii)(B)",
   "Subsection": "02",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r748": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "13",
   "Subparagraph": "(4)(iii)(C)",
   "Subsection": "02",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r749": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "13",
   "Subparagraph": "(4)(iv)",
   "Subsection": "01",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r750": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "13",
   "Subparagraph": "(4)(iv)",
   "Subsection": "02",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r751": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r752": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r753": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6935-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r754": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226052-175313",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r755": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124507222&loc=d3e1436-108581",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r756": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r757": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r758": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r759": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r760": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e4984-109258",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r761": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r762": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r763": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=122137925&loc=d3e14258-109268",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r764": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r765": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r766": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r767": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495743-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r768": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495745-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r769": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6442-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r770": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r771": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r772": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r773": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r774": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r775": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r776": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r777": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r778": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r779": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r780": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r781": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r782": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r783": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r784": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r785": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "217",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126976462&loc=d3e36027-109320",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r786": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4J",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r787": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r788": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r789": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r790": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r791": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r792": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117819544-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r793": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r794": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r795": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r796": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r797": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r798": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r799": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r800": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r801": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r802": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70229-108054",
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
  },
  "r803": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349",
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
  },
  "r804": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662",
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
  },
  "r805": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=124429488&loc=d3e326-107755",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r806": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r807": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r808": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(c))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r809": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "https://asc.fasb.org/topic&trid=2134479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r810": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r811": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r812": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(9))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r813": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r814": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r815": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r816": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r817": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(d))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r818": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(f))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r819": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r820": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r821": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column B))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r822": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column C(1)))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r823": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column C(2)))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r824": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column D))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r825": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(Column E))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24092-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r826": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r827": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r828": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r829": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r830": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "55",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e2626-109256",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r831": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r832": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r833": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8672-108599",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r834": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r835": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r836": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5033-111524",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r837": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=84159169&loc=d3e10133-111534",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r838": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=84159169&loc=d3e10149-111534",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r839": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=84159169&loc=d3e10178-111534",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r840": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r841": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r842": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r843": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16373-109275",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r844": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "410",
   "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r845": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r846": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r847": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "https://asc.fasb.org/topic&trid=2127136",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r848": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r849": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r850": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r851": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r852": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r853": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r854": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r855": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(10)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r856": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r857": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r858": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r859": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r860": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r861": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(7)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r862": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(8)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r863": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(9)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r864": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r865": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r866": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r867": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r868": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r869": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8475-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r870": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r871": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(7)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r872": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(8)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r873": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r874": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r875": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r876": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r877": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r878": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r879": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r880": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r881": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(03)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r882": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r883": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r884": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r885": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r886": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r887": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r888": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r889": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r890": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r891": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r892": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(7)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r893": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r894": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(j)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r895": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r896": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r897": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r898": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r899": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(n)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 5.BB)",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r900": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(q)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r901": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2410-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r902": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r903": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r904": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r905": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r906": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r907": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r908": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r909": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r910": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r911": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(7)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r912": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r913": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2919-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r914": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r915": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r916": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r917": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r918": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r919": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r920": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r921": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r922": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r923": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r924": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r925": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r926": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r927": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r928": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r929": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r930": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r931": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r932": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r933": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r934": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r935": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r936": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r937": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r938": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r939": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(v)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r940": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r941": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r942": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r943": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r944": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32621-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r945": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r946": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r947": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r948": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r949": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(3)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r950": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "808",
   "URI": "https://asc.fasb.org/extlink&oid=6931272&loc=SL5834143-161434",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r951": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(6)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r952": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=124256753&loc=SL5864739-113975",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r953": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r954": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r955": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r956": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(2)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r957": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r958": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r959": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r960": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r961": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r962": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r963": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r964": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r965": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r966": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r967": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r968": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r969": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r970": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r971": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r972": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "730",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=6472174&loc=d3e58812-109433",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r973": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r974": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r975": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r976": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "https://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r977": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "13",
   "Subparagraph": "(4)(ii)",
   "Subsection": "01",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r978": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "13",
   "Subparagraph": "(4)(iii)",
   "Subsection": "01",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(2)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  }
 },
 "version": "2.2"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>124
<FILENAME>0001193125-23-103662-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001193125-23-103662-xbrl.zip
M4$L#!!0    ( %&"D5:GFBBTEAX  -E5 0 1    86QO="TR,#(S,#$S,2YX
M<V3M/6MSX[B1WZ_J_@//7[*IBL:O[&9G*I.4/+9G5>49.[8FR=7550HF(0D9
MBM0"I&WEZO[[=0-\@ _P)9IR'?5E1B: [D9WX]7H;OSQSR]KUWJB7##?^WAT
M^N[DR**>[3O,6WX\"H/%Y.>C/__IW__MC_\QF7RF'N4DH([UN+4NKV=?K;]?
MW-]8,T\$Q+.I=>G;X9IZ@36Q5D&P^7!\_/S\_,Y9,$_X;A@  O'.]M?'4/Y7
MA="Z/W]W G_"K].?)],-9^[D[.3LW/JOD],/IS]]^/W9?UO_,_WROY,)DB#L
M%5T3*R!\28.O9$W%AMCTXU&$C(B ^Y,U=202!'-R>GX*W7$I4G7M\_4E79#0
M#3X>_1H2ERT8=8XLZ+\G/A#7#VHAR:I)+>S<\_D[GR^ARLGI\=^_W#Q("F.8
M+O.^9VJ_/'(WKG]^C,6/1-"X^DNA?@3]]/W[]\>R-*D*@%@%:!:)1*_OI/W3
M*_]XK I3*BK@_OU&(R(4DR4AFZ3Z@HA'634J0,:=Q95M/_0"OLV2(*C];ND_
M'4>%V08AYZ"(IA91:::)0UEY;2C(5*0O]JJ\)I9DJGJ$V:*\KBS*5!;,+J\*
M!9F*P*%@NZ&BE'>R) LWV' #8"C)\6##J8V#U"C&]\>$V]QW*6"U@PE]V;C$
M(X'/M]?P=X*3!T7JX&.6,!Z8.I(49<D+>*Y!ACHH/L9B;',R.3F=G)WFM&TB
MPLU&#6BCXF$=B?77<YW0JI91>=P*9QOB>7Y <-:2?VTVS%OX^!,'X@?DWQPH
MM?#'M_N98>Z0;/[DP_QZ1Y8P'!F()?TS@>90F"29Q'4*4PG,B-I<*NM;V."/
MQ_G:,8!04.?6^Y/\#0H@H*4D'<=KU"JJ4M8B!=BLODU<.W3-"(XS+.K(,UPT
MF(.:?$%<G,P>5I0&(N:AJ=C TS-@Y /PA"9,30%8$01+@3AP.1!W!*;78$4#
M!E34L#Q;U\#_\^;\MW[(0/SM2.61<$O<+F:P(UO3HAQ*ZACX__LJ_J=@+']A
M*4 'KB\^^6OHWXIZ@CW1)B(H:V"0QX_-Y9&!>I!.PNP5\994S+R'%4P7*]]U
MX$QQ]6O(@FV-E"H:&J3U4PMI*>@6\RP=_F\LA>$@N"K^URP[G: 81/J'WD1Z
M6*^*PB%B=>WZSR6[M?)J!B']W$)( ,N2P$;$_X=PO29\>[MX8$N/+4#]O&!J
MR^,T\Y9WP"J;T4@(#>L:)/$>SR1,V*XO0DY1+ H<LEX#:*40K1CDB.0QM6%&
M$)*FB.N9+^6\/3W)\U9O-"+NW=,GZH7TGMK^4I&F>%CRW<#)TSPGHZ:6UG9$
M#)U!![PE>W3I5(CD[%SX:F#F69Z9:4-+M1P5*T&1 I\GTZG^P<# \R(#DS8C
M8MT=]S>4P[;,Q17'<W#7M,%U6S'27&Q@Z^_S;(TA_,Z2,"SB.58"942,AK67
MA]2Y>MG 69$F"U#VHX&I/Q;7(-G.BAN.B(^?.'58,%UR*K>7H),WOK><4[P_
M>HRTMJ:.@<L_Y;FLP%@)'*F["&F"H"R$-2+&WY&MO:+V=QC0 ;41$_Q:<K*^
M\4FT%ZBN8F#['PHS1@3%2L%8$1P+ 8V(YY>4LR? \$2OF4<\FQ$7+W2YO'T0
MH-?W3'S_0CRRI.F<W;:102X_Y^62PK42P)8&60X/A&VEP$<DJZOUQO6W%';"
M ?0%$*GI0\G$5&C@?>% %[>W$@#1[#0B!M_[6^(&V]M'ERV)=@ I?"YGZEGA
M)!>UM-*F(^+F#27)-B3Z;>!;X=RFJH^(5[#="M>( V &*\HS1O\;7Z2[N9IJ
M!@X7#G,:)$N"RMTS(+ 1\=]TB=#XCN"L<-H;N?E?=O\"AK&#B@5:I4VHAC(#
M9PL'/ME\(MM;.H 1<5== \[)2VJ/2#\8^%@XXZDVEFPT(MY])0'T_W9QNT%W
M1C2R/M E;B7OZ<;G:+N&'>QGBL>!S0JO=&;>PN=K37]W@F"03N%LJ)"@@3U%
M\SLK0F0EF.2>6,=E:<A&)-5X_WI!/2 N0%.0R.Z,,R4&*12.BLFV.&HM;4QC
M&BUP+G9"._@;X9QXP?:&D4?F)NNCL=3 W\*1+P)@Q1"L!,2(>/S)]VSHA!KD
MMPL\X28WIX4" V<+![I,6YQ&L/6HF+I>LR"V2  W<+:D7GHC6E6AG,GGA0.>
M!D-.Q!DH(V+V-6'\K\0-Z1<XN0%K)$<4F\N+# PNG 2QM26;6WK[$;$6@PJ<
MT*4SAFR0J$!=_R(C&+:XU5!7[M+L!MWE3\F-?X>&!K$4CH\Q;&LVPW".&+X<
M RF&V!T@,MQ%2,8DNT9.%UT<-6H<-LZ+Q]'&#AO6#_&O,?DRZ4X7<_+HTA(/
MCNB[@>6%<ZK>U/I!-1X32XN.&SICC:4&]A:.KR7.'6/D<MZ?0^>QH<S X<(1
MM.#Q,4[^)EX;6=;F/QNX6CA2:BW'R$^CPX?.W;I*!EZ7'2_-OB%CY'[.'R2[
MTI45&3A=.&[F'4;&R-QJKQ"=UXUJEK/^]\5#:+T7R1BET=)+01=/MZ8&>17.
MM%W<',8H0'4+K,LE\\7 [L)9534:(P-KKXMSTW^CR@:V%PZ<36Z8QRB4\LM/
M71*5-0SL;WQ).D:6:Y>CV2U\_K.!N94WIV-DZ"X7H+H$>H!C$-FK7*>.4=2F
M&[[<::VJCD%$1;=<XUW@&!E?>F^B<[VJ@H'EA?.QX7IEC/QN9G>?.HXD.S,5
M7=* ,+>-^;X*C$%V.X1@XFXL09B=T!3.,<E9M\HGPKH+N;V"O=(=9S:L1UJ=
MJ>OZ,J'2K0>;*29N%\FXT\7>.]1R+?BQ,E@TJQ0Q=DNBQR]:72NA +.O21JP
MAC8?'%1#"3$1S.UBOJ*R"J?.S$$G^07#:3)O99<7JO+@<R4"ML8?WP1=A.X-
MG'M$K=:\$D*#0A6L$V:%TI0#_H(CG1439^G4E5P;J.M?=19,2+04C98D\J!N
MD?2C6RVT>1/NP2PN+BC,U^J84JL[35H;%*'$1=RD"/'-F[2F1W@LA2@^$QVD
M*>718/36RK0Y#(-D2TPS)LDV&]!C%V_M)K!I98/ JCT)#INY*A>#_%0H@)%D
MN>1T*3/7;6$SA.7I$?\+X=]AC=+%USM4@YP;N324S;S"RN#'A+P1!9KMPHIH
M..A%"PE&-@C$TXM&%.$9=*%@L.I!%V*#BN3:00OPW%4W<[=K8I!EP;)5+LO#
M-&[R8=*.0/T>N(9 9%"*@NVM>$R:Y(Y8A^-5GTI5._;;-# (N6"D*Q/R8=R;
M1)0LJHD63]=X+_,O247D6E0ELC8 RD7X4\'"5B9";1E.!YR.*O:#&J=4$P?'
M!F.N45V#K K&*]VW\C#02D6"S@"^1Z.DT<EG@U"J:QO$4I(Z3A=+"E/EF];<
M8<<G&:.G:WJ+8*JABVQW, 99%HQ'U2ZUV1N(:N_;@[ 39M3.DYU:&D3:+H/>
M81XUNT]K-MK,]ZPML$T3@\AJ\_/ES;AY9^SQB:K:Q3H.8+Q=Z%]GGKQQ Q@;
MXF$$XR??<Y"#CO'Y"UW4PZ(TJ$J+)(-6ZA^NA72"_F"I5LB\Z+8OI=)*R*Q^
MR^.@=R8EN*?J<'_'F6>S#7'OR%8ZW]S3-6%XIW;KZ2UOPP!?]<*7V;KHW.[H
M#/I6,'8UT;>LNL6T60EQ5DR=E9"'?@HYO=1H/&A:7O2U6XKNS0V:4+!P-9QY
M#MN+1AE0Z_>(75L;Y%DP9M7E3<W*DHU;EBUCB&JEVR.\<GG_H6#YZA2H=!C/
MG74@7:UGL,^R ^D EL+0FLI=8^E.,4&4OH^R@Q:]+D4&/>PG8"Z[Q5#DQWYK
M&D =3+3/-6QM4]3:TS,C5&I#IN':":Q#.X."%.R+QN3%A]FH*KUQ_6UXFQ8&
M814,B,6DR <I%:)>:T537\T@CX+U+XJ//<@@+X-T\=/-+[!&RG!6C471W?O<
MCT++O*4"4)177R -LBV8"1/9)FOA[2)KH[$ >12?JPL]=B>8^U9"01))/5:%
MD/]^\D50.28K:AG$5C#9)6*3/RP$=AB2R)(O&,4)A%%QNY!?XA!!5C;:&M0V
M2*1@U$HDDL+$S:0KY>.F8,<KFH?D?77BQB\[5HZ39@T, BK8FM*93@-KV?@L
MY ( C]T:49O=(7E0-5H=Y 55=9/<+==KP3=H0%D&HOJ$$Q/].==X(50W9@VR
M58Q/;XH/(-1'P+9J4B[=GPNVJ-*G=P_VQKJ\(LVDU:J906(%JXTQ \GAI%$G
MM?*O)?Z/W9L;I%C,]&N6HK%HQ+Z/AN&4A&=DCGA+PO'N\B'P[>^W&_PF/F/F
M"^HT&*$=01KD7OY\C6'TIL$FV2-CA-R2V*T(O17A/VA#,CQC%Z"(0X:;_:Z-
M#1)NGB$JXTH42W'D=^U=!N&]".6-BB!]#6LC1(/,"_:@74;U_<.WZ*;E83KJ
M4:WE#<NZ1^-G%0:O5<DZ5G=H:9!M2;9F+2E9T<M:%CZJ(/UL_K*#!",YW''_
MB0G >^WS=A*L;FF08$EFZ H))B@L$.%!@BF3,:C2LYG+),)X-$%1PK'H[::_
ML6"%SI9KS(^$S UEI.YTLW'1I1&*\&(W#'R^O:9PSL3#3P3J'N;%N0\U2H=J
M'I%!8=XLH0;]+(E8S.AGMC^HHTQ5",B+M8E1'?_PJ)#]UL)^67/T))4]L^*N
M61=;*^Z<+$^Z9T7]TU!;V$6\E\"*T>>+_+26CA8-_;B'"?QSM5A0&Z>K.869
MA<,.[Y+!)TX]&\I7)/A,GN@]$Z!!6D:Q.XQJPYWFXI)"94X= )7$PQH,\/M
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
M@\[H#>AHKQIYH)]"$?AKRJ=!P-5V8=_=K*2H?8=3C4E"D ?M7@7^S@,[=E*
MH3%]84-LG4V(S0<$AZWQW1YEQ&C8F4LI@($$8T;?AUQFWE?Z$LR?J?M$O_A>
ML!IV-]B&H#ZZ^Y^4\/FSO^<^YJCHK6,KV%J_A:[I=/35N6L_Y&^@;SH9O76-
M/;T%L>EDM.^:O&N&73+&+C$Z["QBP-W!7$PQLX0K;QY#.)["\LYL,NPU:"4)
M'2YIE/$U]@88M"\&W.T[\0OA#MX#QQ<#@_;"A+S+A=EFXPX]./)(N[@(>)(,
MM-C$N]YDDQB9[30[=IQ-(4[F,= ]R\Y$]G8P>Z!!H#[XBYBL3RYAZP(9PUBA
MVM#3GP4R2>7RB6Q80%R$GV#WA32C\(#]2U*O;OCN*>H_2&68:\8=2>QR&VE
MDQ"B3 D"U!//8DX1_S"<Z870WOCSE09QBAE<%E> "G\/='W;CJ2^+N/2,7N;
M';.#]+H">W\3!.6^#/:+9^MAKR%,V#LX?[\P@>XE<VJO/-_UE\,:;LSH.SD"
MPP[Z$=_3D;ZB@]\.51'08=L8>PK7!0H-NY]L2U7[CL^Y_T_BR00OT\W#H+TK
M1]W! ,S<P-_03S['YTN"H3WES.@[G/K#Y3+S2&,Z5!-GUWWULR-M[9EPC:F3
MZ U[0FS9JZ3(,>I3E'ADSHDGU-B?.O^$Z;FG,,0&UUV[TMC7ZI_'/I33C0'O
M+NXU>9!#.M)4X.ZP-E+8S,!$/?/TS6[\4C;ZM:F7<6X7>OD7&JSRN_;7.N?M
M1F%O&SLX$T1DP"Y9/3>C(9]Y\Q55.+-T#,.CSL3UR!X5%KZ]I-!)$66R[3-8
MO7ZBJZ6AKXDL2HAP1[;<=Z51$U_P4$]9#>C-T82,OO-2R)?-?_%=AR9;V6LZ
M4$J1.A+Z[NLU+HZK0669H.RM+WB QR 5O#0.E["FXUU/L)H_^_.5'PKBH2/N
M_!D:;!_0<#;LMKHC<1W.#BFF![H)))SYBO%@6X9L\+NK[N1U9\5>.KA#S!OQ
MON/R-?SE52GF+ELM3"0-](32O2HQ.EX0P<3#!A9PI]BA+G$,C395#6CITD7,
M)RQNO:$\8_((=_&(26$-Z@E31-LACC 18#S.ID\ E#K#6A_KJ.BL4,-J4V^J
MM \]ZJY$RF<?ICG/P:_R$7454;D?BV(+>CI<RF0!#:1@I5AW4;0<P$$5SH"[
MBS.'[</N)A;T/G6N&2G=(C;O"'-P8HQBY&X7#\]D,U"D3A7^WHX:B.3:]9]_
MH<YRX"P+99A?(>'14!;+IH3L8L*LQ3&D3;,-,1U./"M.!::E4"]B,.K\C2RI
MN$MSBL'/3QAN[A .=7B0:N[KCLMNE/5EQS)P?9BN&Y'W%TI"7C"'8,)C \8W
MH ;]4/H:4??W%+T#Y7(!((60V?8V@9C[T>LRYLQD@QUF>Z.WMQ4CS4GX0%U7
MY<;Y0OAW&A3<P 8>7C64]3;V:M%_IAY5'L%3![8D3)GKGVATL3/0OJ@',H=C
M&;[;1+B] F(NZ1-U_0'S '<F;CCVO!65&4PGAO*TK27B=1:>10BK&Z;P(R\*
MX2?B75#IL(</@F5W3'M:;%K2V.7@"%N"Z<"IP?)(.R0JD @'LJKHR'8QID09
MIH:TH611=O'2+.;@'VH>+$?=<VYR-%@,FJ2KB+:+EY],7I[E3:^YU.LOE&MI
MZ&V-2I('.*4X!U+'>BIZ2XR^R:29'3!1LA%S=X,DYJ=)@A[<T$$?0>DME*0%
MN%U(;'JNKN%ZW ^9[=GSS>-4Q4=\AIGY!@Z2MU[&=CH#58-%,L#T"!GKH[B3
M>8^FMAVN0YF86$8)8AY83E>X CU1Y:&%4(<9&\/UIK= $?3QN:0N@(>)YS)$
MU5+S\<,*-R>R_%:F@117+[ E8X(J!1DH^&P'^OJ+R.M 1&[,RGIO@3F=/- I
MSCGX@+6$.'TF?-@+[RH"NMN2)*PDQY8[L*-.+14=S.^I"],5>K=1*ITR@RW,
M''B@?!J^E^U(VJG+UVSQQGI<3]%.'9:>>F^HNW7T[-39Q"</OKV- =R5N"[)
ME%EJ3-]OIYN1TFF)H?PIOB^7J]<WSZ%F5$.LKQV(ZG$UBBS?PYH>S53T]LX<
M1DH,G[,FC[6#BDH0@^<1RF/M2/@>LCL5T/:S\X23TH)BU@#YZ9O'Y!-_V8KX
M=>\[U+:$MF>/.A'"N1%S<'@VG,<EG9]='P9B&KYVXS]CL(JCJ@\6*=6%M#[#
MR,KPRU-U&G,)1R02A#[?3L/!_#&Z438T8S 1#GI(8&J X1)==R;NM=ESM]F@
MG_6USY>PB& N[KTRI(R<_J*'$65 7G@&I2U#')G'Y:9H6(5H0$Q?O;^,YFPT
MQLFH7[3IQ0F.X.,%<'O!!GK]HSDQK];]^$.4C"U.Y])?NO\.7*BCZ=68$5UU
M)(G!]M/](A6OUN$D?]%P]VFU-+Q:9].GGF#M18<_)UUR,G<>>Y)[&_I>3R/\
M-1X(5>X*C*6%#NY)+THI>86.)VQ]NPK2B<3>]DP%T6B7@](Y=#\*4J2BQRV2
M3 .1ILPH(!\V'T4E(?T-"15 N4@VI='^8^ 85 /^/D)2"Z#W$J%JI&*7@-4H
M!5'B0+>GB%43&1TN!V(0L$/@'/W-T>@R;,*Y&AJZQ.'FAF_JB@(SF$2RB)!<
MO6P8-^;V-(_ W<+9=R"O!VYH[I]OC1--2>OPMD?T2%*<:U+;"(+"13["3'S/
M=IMY 5U2WO,BVYR6SF^&QB\9VL.GLZNDH$L"$($F7\UY:N!4(";TG?R,$V_L
M9,P#NV!QFOM?:2 S(NWC== *8CJ^0K#'1PAZ>(/@GK+U8\B%_,:CR($%]]=/
MU'/\@<+L:HGH+^L2)PZ-W\.](UL9%S)PQM(*"CKXB^XCG7&7+,;'PE[1-?G3
M_P%02P,$%     @ 48*15E8ZMVJH&0  :7T! !4   !A;&]T+3(P,C,P,3,Q
M7V-A;"YX;6SM76MOXSJ2_;[ _H=L]G,ZG?3=.]V-Z1FX\^@)X,2!DYX[B\5B
MP,BTS;VRY*&D))[%_O>MHAZ1;?$ERQ+E;F#F=J*(5!V>XJ/(JN(?__RZ\(^>
M*8]8&'PY/GOW_OB(!EXX8<'LRW$23T\^'O_Y3__Z+W_\MY.3;S2@G,1T<O2T
M.KJ\OKD[^MO7\?#H)HAB$GCTZ#+TD@4-XJ.3HWD<+S^?GKZ\O+R;3%D0A7X2
MPP>B=UZX.(6__S7]X-'XP[OW\"O\=/;Q9+#DS#\Y?W_^X>B_WI]]/OOU\R_G
M_WWTOX/;_SLY01%\%OS^1")Z!"('T9?CTD=>G[C_+N2ST_/W[S^<YB\>IV]^
M?HW8VMLO'_)WST[_=CM\\.9T04Y8AJ,HA=54E3O[].G3J?@KO!JQSY$H/PP]
M$HM&U,IU)'T#?SO)7SO!1R=GYR<?SMZ]1I-C; ,>^G1,IT?B\Y_CU9)^.8[8
M8NFCV.+9G-/IEV/BA[%HRO=G:>E_OPB1!C9! K\2'Y$^S"F-H^,CK/3[^*:0
MG$0Q#T\6="+HPK^>*DJ?-B?70PS_116*1M,;T,(%M1:NJHH]27@1+I:<SFD0
ML6?:@+B5]>U+=A+-K_WPQ9Y]22T[RCGP_I&PB(E!XB%9+ A?C:;W"??FT!'N
M.?/H:%IZ9^#[V-WH9!1\)1$#4:X)XW\E?D(O:4R8;P2K^8_NV HW 8Q ,_;D
MTT$40><JZL_DX'1R,X&F9U-&X*7-UP?!9$Q]E/ JBMD"?_@>T6GB#T&A(HN&
M:46.G=OJ&20(.:,1=IPPR/M\\=@*L&EE.TI]S\,EY?'J'H;0&-KI"EISB;WI
M3?]D;UC :> K._=GCR? _^L2AC/ZUKLVGEMU5JL:=QTW0<59/)AQ*L8Z:*%A
M&,P>*5]<TJ<85PR3Q(?N,*9I=X#1(O#8DOCW9"4&QS$L"5@ JZA14"XY2F)<
M9>#RR@)[B]+LV&Y#"D-G=$OBA,.82:$/B2=#&">8+YY8P#:O;'=M31:)&+%&
M\9SRM9EX&$;1Q1P&.!K=!-G:1ZB=NHB=:N_M\SNVS,.<< JS'9W@%Z!ZL<:M
M?IIU00O@.]2^\^R!RZM'\KHYX./CKW0:<EIZQ6HFJ5/Q?M# (/_,T,ZZ#GFC
M:#05-X=F3+T01C*?"17(FQ'^5$CP%8S2*8M_8_'\<4X'BS )8A0U04-E-5@N
M_16,;O G7+<F,)>OKND$S%B_J&H,G>@QA#<J.=K\4+W&<Q='<US!?ZZF4^JA
M@CQ24!8.\_,E@T><PI@5/<Y)_(T\TS&+0,X'-@M@^>C!\N,^Y&()/II>4G@9
MYB^HJEA)UILZ.I%+M*5'? \'9B@YA)9;:U/Z&M-@0B=YJZ*H.QBV8E,D]-8^
M(4R4D*_SAE^(X!-BLV%*HB>QXY!$)S-"EJ= Z/DI]>,H?X(4GPMZLP=_OZ-Q
M^DV<6O*Z??)$??'%OTO>.VU/PH+P;)[(U%PAJ[3$)HT#O@Z <"^O%GY<XW![
M1R=[XS3"]2K6=L* QKS\E(<+90MFWPT-14\BD"5<XG<(*&3(88CX<GQV?/1"
MV6P>?SD^.>N %81R#4A!G6,6)+@,7>).(G:NK2GQZC7F! 1G 733&VBKZ Z&
M3B@)S0BBS<#8A(X;Z9G=TU?[HAU[@E^M8>=O&M:N@F684$*#X:GR[4X);:&#
M;*I'92-4T_JA*UJ_<9 *EBSJ$7SMK4YI5*CA9O.O"5W=[+]TU>QC^DR#A.:J
MR(DG%J07210#*G[UZOD);A;@(@C^A^LA!3VU:NN4Q@JUVZ2O%JAJFO^C*YHO
MPBC&S2*!1$'@QGNN4[,A;G6C_]K96J@8(_*M2I.)ZNW=OHQO%:)7,_&'SIAX
MH&*B!"/NEO#?:4E8!26J0FYPLZE7F\RH$%13]+&[B2BBT YSD/42^K,?BK,)
M/4F:<OW@20.BFJI/G2W5A%>(#\(.)@L6L"A&E,]43Y:V9#_HTL*0&.7ONV(,
MS(5P?3S7<Z4H\Z/93XJFD#!]UIEUC$=#=>C6%>QV$T0':&M)HD$CH:VS38UO
MA 41ZC2-1@&H*TB<L&B.LP#N13\I;6)]V7Z19P!(PE]GNQ?Y"*+O9UMO]HN;
M+?$E3/S2V5+_&L9^-@LN$HZ'/:M'3H((3':0#_4*U2J=']0[&5:U](M"*V@2
M>CO;R,A%' 4/!/U?UKR:"I<FS6AI4D&_.#5%):'SUVTZ3S=.-0_VH/,W 9Q.
M!L_0X#-ZERR>*(=YAOEX$"\\4Z*2UY1"M:QK:K'?2&3;$@K=7#U[C+)Z.NU%
M-9G=[%N6D"5=[ ]=C9B5XLO:8##YGR2*-4-H[1H/5AM,P$OTHF+#K:NAMRH:
MH<TCBJVOWU%8\*O7:<I2;=O=%<+@I&P PZQXI_W'@)]**UR+2NO!TL$.BD1H
M^=)Y$$S$;QDQ1;_?D?M=/MCM7JI%?[!1FUT:Q#5'%@7,/,SJ+W0RH^MFV9AZ
M/HDBX;$HD$[!(J^O8;6^=)"J5:LE'/.BL<;7AC;]U"-5&V@=@MIV6E! NZ2<
M/6='7>CUDL9KB!@!>(ECJ,XE3?\5 -]&8?2?KJ]6#7SW(%6M@79QS%%I%[?S
M'JV,-\37.BYU;AH68=\M&H3P3?P_;E\^$S\-:@21F0?"X1]$T''Y0>G->^@9
MX62S$\#OJ:\>=!<18(<1-&FHB,K&;%F0=KL;RBM"A288=O0]HB#L-0M(X.$&
M!BRMGT7$B[HO&E?2;4?M1*,J^KYQ<SEF&X/,'J43X7EQ$T5)&IF:;GM]AW$&
M0P,Q2< SA9:L#NK$$XFH:+6'./1^'PE\*@W;\W>[#O"P[(*;"K7GUG',;*Y&
M6XYQMU:D]<('J0WK$!VS6L=TF64M&$UOZ80E"Q3U+HR5TXZR5,])5&)SS6*\
M+T1%[<IU#GWSE6.ZJE3/Z5-BTUI<W=''$' PP<C_11B(:<",P<J"AT-B);R&
MHTVV(^WQ24F*6Q:P1;+XEA!.@IC2<;@B?KP:/?EL)EJD@JK!</1H5T5/2;,'
MZEJ(2GG>%AHFUF2&:YER@9XRJ(/E6+S*6YXED9+G,7PDKQ@6. ]]7$)?A[QZ
MI6TPGMI7V7?*:P/71L8T,P97+JE!:F].03\Y+,O$$23\-.-D,0R)?"RN4U5/
MZ:T/V+7XF?)R7.S'&YJ;FG(]Y=40G3XTIL,9MBS[D 68:2Y-N6<XX2K*]YQ5
M0Y2N1=!(@!<Q?;OL9%=6\G,GVZJY7(O8N:1+3KTT.QO\[-/,AVBPP!Q@_]2M
MU<R*NS@4*'K$)K]F(/410.TR6Y9N-"U&/MU^E+I8SYE4@W,MR,?:<NJ3763!
MFIW54Q7%T]98FB9++(5<I^XEZ6)!U>OT17O.H1Z@:P$CVPN#@>=A<E)T8J.P
MB'CRU0&N)L5[SJH92'W(1_O)&3?$+N6[M^)TK=S!D;F&3L)B[4VF/7;0>[)"
MS<,E6IHCOY2RME:755=X<+R;P98X1'2V.U6) Z4NS3D9(ELED-5RB,S+L$KH
M[LP):UMXL?E6P+\@2Q83'UK)BFUY)0='MARJA.OS+O<LIRS6.$.77^HY664H
M$C*Z2U%[R$EZ=F:N=M:>\]J>2Y+C.M&]KQ9+/UQ1.J8Q^CZ&06IO*4T8<6!E
M6KJG=%EAE!#6G:_2#Y+^I9'.6#\?S'EW*7,ET-$@BW8]QJFLY.<QCE5S212F
ML\VJW'7D,<RN*91><V?@>&-2B8L#@Z)WR%QM3*!*N.YN^^IK$N$A-+IA/K%
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
MO,V+>$9^6/I7WU!NW2>Y$CEM5(6J-]FWI9;Q4ZHV-3J^L#N-W+&%6O7*_"G
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
M@T*4_'*[*" UHW"3FW4Z""],2&W1A/O W<* Q) =3WI_3E>NF(@V "_>+M5
MA>L%51\GPF>.[!YI[Q!\-4CNRC3*;\=C%!;Q&WIY#^9$:N'=;XG:)%SDW-3S
MWG*F5-;@H-.F@LF+IT(?LC3*TONT0/A'D/X<@LP8143:A_NKX;.01*GZL,8Z
M]6NH<:@ R8\W/?LZP0TE/C&Y=V#!\..)3AT^5U-)+WIYP=F)+M@@_'AC4P\E
MONPD]' CW$THG=JU^L'//;Q*>DI_4(LFNA>/4#ZCMRQY(UD\-N (EW1N/<#G
MU+,M2XT"&"_>D7R(4S0<*RWEK"JP;GJ0?E-Q0>>#T?%HI!&*'DBP A:N)Z*J
M@-)U3DX^ ?*D[<+2\1*D[^3YLC$PQ:)HJW"D9'A@;!6NJM/68(9P' ;\_0*E
M*$SF3I^KDQL,E T$$PM#U78-!/I3I%Z<7QX;NL1D<H62@<1@S*X]P$R"S0JB
MZS.I# =*[&V!8_#G15)B+?SYLDZ9)5*X6MDU/@R+*<*R&5%W"U>@W*9UD1L]
M=,(X@!CLZ# [U$&^^3!EN5(II9KT3ONS-'$Q,)2K9(,0*I<Y*5'+-<*Y6D6X
MZN)J=EM\AFYUW!OIJUO7,[PN)8OF<+6'T1G*7M\/6%KQ!F\@#8KXIP]!M1J"
M&Q.FH.-2") &P^!!Z1S/[_024W6K/^V/D8L-@*%3':?IYGM2L\A&-W%EB6)K
MB:W-;<$9^E0Z,FO7IT]3<C?%"B=C'8E,K] XPV@ <*)J-&6O4[1UO4M@%))M
MH('E)/R3UWMIQB%U3 R*="0GW;YMQYFO*46;I<2,_\C8O,T%PM"UTOE23M?\
M>8=:N!'3U54AL?;$VMX&PM"WCA.C/GU[,=]K5;QP_M=QJGQ!84:>V6VF.J6I
M7Z9N \9)-*%,WZ:0H@:+P8T&1[;@@L#*,/02HC3 <<:YI44M6UN$]F=A$ -A
M7)+3X+$6<=%(\SW-YRB,QS&*F%,9MWP-Q=7B(=8PA1$A% 8K&ES1EEEQO<28
MH$=XP]1N</M+^2-'?R\!W^T;F0O@4Z)'<>DUJH#OL_V9W&3A,%BRZYZF""ET
ME#'KU-!<7ZT7Z5V:K2U0#+[L.J=-\.5Z,C1+G'!:M.N=?FB%N4@&38U.W6RZ
MZ?/>@TPZF%WQ&<JW_?IM@3#*B\:=*D@=3"E=Y=^]W#<V>$ 8O%A.WDZ)_6IN
M&5]E&&?O)  YF,-?BH7DH!$U4[U;<^%G+FBY<26-D$&QW6CZ3;#+'DENA5T%
M>9S?97AUWX_\DL.R8DO5[OAPWXCN"I+!M?M@_-5C%WT'-+NAJL-?^OG B=J0
MEL#(2'+C/J3_.IO-XH+ OT/H"4Y7\%,PX2;ZEF^E6K8N_,P-J4:Q"""#7Y<Y
M\$!TI/ATU[H*[ +]?!A%=@[>AL(@R&52O&II>)EC%$3#M'UIF_?FN&P3]1+C
M9W)]60XET#%HM9Q50#1A"(>A9 LU;#\?S.@QGVZ!8W"J(^AB*T'@*A:LU=/8
ML2["JC4")W$6'>A11L7@Q:Y!Y@EG(4)1?@?0E[F/"<Q<PDHCK%LY%R\/]\U@
MH("+P:&[=U__0/%D6J!H\(8P;*C:1Z<A_.HUGLD^.B/14J.'?5L5.Z-DL.WR
M45G8.\=9%(?-JXJK+.O26QY6 _6]C'T;NHK8&(0NS25FD\^#5.$4A3]ANBF(
M+2-+X:<)#NHH:B]RSZ_O[$BDG=\M7!W7U:([]8DLRC>_6; 2U5!WYV:;YVB-
MX?&AR_U/FVF^4H"93:*2?YS%B\0\M8'C5\LV7^$R9(#NDW!^J6\9@BAP?K6T
M\S4N7YSANOG2FG^><1C^BA%*W[,LJ@\)WU/X!#_NE%VC%MLC8SYE!%".OQ*
M?'BTT4A6BB-#EZS-+4(R@'QXI]%82H,C0T'#VE)25!0HD;<%SH=G'4W2Y\MZ
M999'T>KE\E%(]8RQU:3DP?5;I;F2@\.'[/\Z,I16>%PGDN/H68:8+2A>/ >@
MCQM?9CN=) G3R.K($, UM?'WZ!)5:R1.T\=Q1P%EHZZ"RHO' C9/(S<HQ"C(
MT1VT$K^A%.7R1B-*W='AP<7IQ:E31["R'5 !E1=O!6R9YFN3/''#R%/7KE1K
MQ^F@ZTD9%8T7;P)LRMF\Y[NX40E,;5>JP3GUX_>DBHK&B]<"=,:H5< ,;0"M
MT$3!XL7[ >QPY@IP)!4G*M](#=YIS'=/(J70Z7AVH#>U7T$;^4.6YR@?IK<?
M19Q.RCB?$A##L>"&C;!NLX([C:]09E(!E>"A [/N]QN$X[> 7"&XB],@#6/B
M:E]VP'R01L]Q_O-;D$*7VXSE<OL8_%+H35G_@J()*'I KD2 F"B_B7/BZBUA
M%#U(^.Y[M3LZO;"]/Z%(2_H=Z7;/*$R"/*]NB),(KD$8EK,R(9/(\/H>9I:L
M-KFM;I \99AP^8CXBZ:93U:#Z<!Q;'AO[EESNF&=^1"^4"6HO<YF<XRFQ'Y"
MP!*Y"<:U FX_PJ2$R8D4S-)JA:O/:\MS6Y.I*_I;F1<U 6-8 E^##TZ?-/WI
M6L^.0\ ,]4UKNM,0SL%*.17DTZ<@CL@!$E8P\H7AF+P6R,ZJQJQ1B^O8WZR9
M:EG(?D1RJ(,7!;AU;A.4:>84R V$L[L,R>M!8V"=^UT2V=,*0^S8U4 C9I8#
MQ4PT_0B5[B6;L'V(7%E+>0W]$0>A7 X47C4 YSIGC5CW(LY8L'P(7S'$F2_.
M0%/DB1R#=NT\UQ@VAM<EQB@-%VWSU%)XX=,<DBT =*=.#?&88KEX%>#Y$,;"
M/9U>+9K%Y!DEU:8QG\;S#@NGN,%Z&VIFO^7GJJJ@$Q]":R@R"N=N9IT:F:$!
MWFN]56"%3K48LQ?1.";H]'DI-LZKW@">_@LU'/CODNR]$5N\+-/*U]"<>JS%
MPXFQ#G/Q"&)YO/*XO(13%)4)&H[O9W/80 S'KU-$[>+W*7G7( -9TIP8Z](\
M2^*(F))7'UJYL?)_^6QJ@\FEW0TTS^#:[K-H-5]5IM6UFZ")J$ZC[D9QY>^,
MS@X<IT[K3;&Z^;NCEGQPQOQ*CL$SUXEI#'4]LPKSX_:L5\;\2S-3F$ECOF+O
MD=>#1F.^70?159# 1@:]3!&2O:_(J@*:V&\C_B7S>5\^9!^<,C0)A>=/=B4
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
M:5;H*TUGR#Z8-&H'1#7&&OFW/1!7"-2Q=E2@_/8#,&;DN;0 +RKM/&8I.7.
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
MQ&F!5^FF$^(VKT=6U*#W(6RD$>\3,"I4D;%3^/[YRV*KFMWMB!F$*CI2A;,
M.J!/O&U@#3T01;J,BCWA@OZ'7GQXC1+"0;$JZQ#AGZ/D)'N&Y$@/J$RV$@F[
M94+ T,;^T2&]0%$G9,K(_6C4[)+YU"$GX VUR EU,%NA]9JNF46[N)+-F,7.
M2$L&N5'2\R_LFZKF'<>0!1N66W,LHPYSR)%B=B.&<(GS5[($D7__I__RPWL4
MIXCN2Y@J_:???_]OU2^^][H7L\"=L#6S !V(TMS%T4N<Q&6,"Z+-+%/G/DLV
MQ!92K2[/%E%D^RX E<E!+B';34O:7*LLS]Y#SE,DNEU]N+V[?;Z]?D*K3U?H
MZ:?5X_5/]W=7UX]/_X*N_^?/M\__X5.#7$$XU"97!$)KEOV)C([(C_:8SS@Z
MC<,YH'&2H#ZEZ>A)(.I@>5YCA@V4!Y:?.G=\L$U@6DT#ZWLI.9<X++1MYT89
M]KW1=V&_RS9ZB,ZRB"*P^Z0'C<1WTB,&=+=1C:#]/F-(X&&'(?"L],FKEO[A
M/8[O$+8%<H"H-@1R='AR6)P<%<\.BJ5CXN=XT8K=_AECAR0L7\3>!YGAR/$Q
M.T=)>;Y_2>(=.U11(]/0'NH84L.Q\/"'-T5M6T]VUI7Q(4;/__Q/O__^_?=_
M$@7R=@YH D[O1! $-59G@RZ34(?#JZ/";(O*/4;%/LM+1*;[@%B1K2RM_[([
M17F4EIBXKH<XC0^G \JK"<N:[Z$<)U%)FI09^BE+\?F-%IQ:[7+,TE_ 'S/6
M#P<>\2M.3Q9^EHK PPL5@6?EVXZJI6<_:S3?(;Q%D0-$]0Y%C@X01->'^(]<
MTYS<+@M:0)S;2**ZX/*N-C0P7IH-_,>(4P<#:(D[G!;>%CUG< T5PQI9D)$D
M)]W0T,!'DIS $XX*N'!?772I9*AOBWBZO^G -]MG!1#QLM=-([)AX@-9NGLF
M?N45?K$X5I>VAHP02+D5*UNDNW?,6:;MVN.+CU%YRJ6;;Z#C"RON:VX?6D>?
M"?1<"S0?\W_@S*=XQU:'I=AGG-]ED=<U5 -T(>BA1OF$J$>E[WPSV&K[]><U
M+HIJB_@0G>F&[$IZ-6Q4+U 1$F?I5,MFTT.CMQ>(]X+J2$35#[I:X,*8S7WO
MR;*J0BV <AY9GLO7A06=9U+!XDOC5+07=?*HGU:QJ-FF-*][H+>U,)]+8NNM
MXE'OZO#6YH316USN21>T#-491SE\,.HN3G%QO^5W[FT.263-08])I/R*!R5D
M1,F,\';+;4&.]#Y?A;H?3_$F2M?"ZN7._2-^S9)7EL*L)X??8Q,U4,2#$S5*
MH _^[$[\?!WUZ<_XO!_MR?::+*EK>/>*+ [Q@KJ&:H=+!6E UT[U".Y<-_4.
M9EOV!81_D3=,+?1!"RZ@,@HC;F<'<A_;Z;YRM_&_U/>O5V69QR^GDCV&+#.R
M"PCBHJF;8(&IA?M5ZT N5Z\V&U9[(4H>HGASFUY&QYC8M\OL<,A2QJ/NH,""
M&/+$P$8686_5$"%*17=6%=T%XI2(D7HZ1I@FTC__T_M_^^Y/E/1=G/(?JAZ\
MANVM,2?$[ZT!!_5RFQ^"LT^;GI=*6\.^S)9P*WFT7%U)8,TN^"/1"UZ<6,@4
M!J,%HSCW_*A:!0S)(VH5*CSY0DX^D&??9YK/XV=OX+ ;L'%SI@>3<!YG!'Y1
M7L["^@>\B].4AI$^1 F-3"W$\75J/#ZSXI?THV'6KQ=I[SV"&HWG'$?%*3];
MK7NRQH!&0\JKH&Y5H]ZBY^O0=Q3'-*]#5GB-U:I1,82O&A(@\'W$912G>',=
MY=1.%:OU^G0XL>M:5W@;KV-=',"&&!#>5K*(D7Y.A&HJ]%6'#E6$7_OQ]N:1
MR*<BV.-KJ!CVX(+)J--NK(S)<X2FD'ER1#Z%\__.7CZ(38TCSU[SVRA@(*2R
M46  ZJ9KK2KL0B6]2)SC/4Z+^!7S-ZYW64%SJM]OGZ//NK"6:T^PMV(=I91<
M)F@,?96,K-M'_1K[*]K-URP1#KM/%GWV=I%V88$I>9,HIQ3E!+[1.@;$DGNN
M8Q ,?4+9UNQQR^@AH_-S-BF50/M\MJ7P?N+B*L>G^T_OJ@P?/)8<WG&\&E&:
M TDUG& VTS3S0O^Y^BK=6)59,Y-";K3-<@B;6%WN#!@E&,%U:(D_; $D[,(M
MT>.A8FAS2]>NVJ"9UEOE4+DDQNJA#5D0I09'2,2:]A]D52Y6O?Q5KZI#J"TZ
M4J1PJHMJ]$5?852C+#Y>I5NINX;&W]MT+7+$Y^D+*O68%^I.W ?T2-T,=R-8
MP)_\66%<1>#IX9_>+@[>_EU_7B<G=J8&\ K0<@ES$^:Y%2:D16ND$*$\ 30K
MJQ[U?@KZ=C>*;E5]AY0^2_L*4MC4]^T'+OR5WYH@S4",$)8N [*,!7_EL)HS
M-]@G]_1@GT+($/;)+4D8=<)\Y7B?10#;U<E?LC 12?I\80O!:%S*,.UL*+*&
M)60%^P=*&D9/].*2?IL^V[C,4KIQQ.E:_\)-2P5\+*SF7G;:6K7F%4:Z[?V=
M$2\D /3YL0%%LJ-D X2@;T \[2,RT?S*@-U%B#Z%G_L0 Z[UUR)XXV#N18S@
M7<&ZI]L2,LAH+DW(\.+A(0-G8W4J]UD>_UT+=A.AM^<-$AF,+QTJ!+5$(;QV
M6$00?V\A5-C2/XM0 <O/$F"E&5HJGTN!%DI2D^I;(185P>O*8-8#"QA!*\%#
ME-_G3R7=I[!;?@\X9ZS9*8.:VH]2:*31(XL0HBQ'G)1?*$6$F"/.NZ),$DOZ
M^L&3HIC0IE$8$]1@KJ4F2?9&'Q;=9/E5=GHIMZ=$+%IGD935K1_(*ZF.$@KW
M,VMZ5IFY[@%)RQGZS>DZ55"91(]594:OMT['8%2X<SH&H/"OU?@JJE$T:6M?
M[]4:;DW/OWA#3U?H9N38VWNU/BZT#];ZH/"P01_A@=EVX&W#[N"P"/O= %VQ
M>87S[I"YX4^_F0_"+9/%%XRA71V1YTB7,DBJ"@Z%D\]C5@%\1[;TL5XS@$#
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
M]O9IGR4;,K'T!51Y=KO:H*/W<Z%!*Y'V&D.7\E\0IPWO&H-YQC27%\S3!0O
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
MM+1NSZY<LH2)E.0=65(.B!+YNECJ*LE#=,ZV6RH%X_]9Q3]L^BX+/(E9O"S
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
M()"5\F.TWL<ISL]=,V/<4VFI %=&/??#26A:]]<,SYNL966 7/$LL#1<Z2R
M!%/CBXSF[8%F:.!9\HT:H"* K-2EXEDHQD6ATFWI&?$+, Y:-TN+%:$TEA8H
M$]RW#Z<XH4G%Z&,*6F]KGR5V$':BAG+CK*498J0F9.MI0QH"W/W)!>;6N6&P
MY]IY *"5>P<^8;X.RRUBBEHJOT?DFFB;Y!C&>]QP20D\'R";8H,6(/*C E:Q
M0"V53Q70QLB4  KKB'A6&;RJ@3FF9P$D&#6H'N$*_!BW/$9*2'4P2B' J:)
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
M2JV'C?3\HR-7XPT9EG5G6#I[-+1IA^75UTWC)51)NR\/08]&;=FA$%-MYEV
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
M1@]_7K>&WQD^Y]$&'Z+\-[,W*C8%=$,E? Y'M&WBV>^<AU=(]TR%@J%?IH(
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
M%R,:56.@5<-&'^80P*<&F,$SQ+X9.2"HOR-#2 MHD?_<'HYY]LH+#&H@KZ0
MQ+N:ZR%6:!->W(O^OVYC/T!?@G-(H!OP,D2Y 2PP^3O:+)Y7^)CC=<Q.!\B_
M$\SR7Z>][)Y*UTVC$_-] C(GR'SCHLL8V^W[ C6],VAW^[\8[@$N].8=Z@S-
MPS!Y35 RL[8(J4QF5A40$_+A%"<T2RH]+NG:,9-[:* #5':3!$-H-NW1</7Q
MZB=.$^../@S?9TDXRZD5L(8J9(4J$+WH:K!&#?K- %$_X$],7Z*VN3!X=F"P
MSJF"R#^/S4IY;*)E7B]=Z0 QA*\,#;XC89VDF;K4C-8]A!$7&TCE&![K4 <:
M7)+-FD.,239E($#\E*54?XD&I#N>[*2Z6VM,\V&D! 2>68HAX+H4=2JBKRJB
MKX/(=6$Y,T.064X+U'G8YK0N?XGRG"P-9^)OYZ<HN4RBHHBW,=$"5J-)MYNU
M[@'VA,Q2*LE1&:5$-2FJ:"^J<FW 5ZVG"U23S,[WD25C>2JCO%R.^P\1^7%-
MEI<7O(M3EMHVV[)L3&<<S?_HB\MTG1JW^3-(A-.-3A;@4TL7(R YOG2Q "!V
M[9Z,:\XXP9N[.'J)D[B,<6$V9R9"0"MFE&&(+4: *@K4(5G.>EFFP)XH2K4^
M>O4L[1 UU T[.$%%MBD71%NWF&AFED;)#;91"1,A;!1:+X,D:,H0U*5 E,3S
M@NXLB"" Y["O!90DP5P+',$L#[7_S8)\M6*>+98' R'D\F"20;"IS6Z*45PT
M*\39__K@*@MKUPHP.]\;O*7O7 E(?SS%&^JQS3H3X:UN5@HAK&Y6VC#AK6]M
M,J(S$2:AST^B!!?/T6?=NF5-"?7BUTH*Y<K%J?CU+4J'&*&?Y6L&<:I@-/KG
MZ'#\4RN1M\>_]A#KO?\%QI?5$^!)$W/LX*Q@LU(RG/$JW1[> E>,,1DNL\,A
M9CZ#M;NJHH/W5I42J*:"*T5+$8:O:BW&%28M\P[_(?BJ>A@I7%4]AJ:O:T]E
MMO[MIRS9X/P1)TRWJ4=L6-.45,#KF9I[); I!>(DJ*:1[F;@EC%[*5C+O07S
MT&N7 4:R=0L"0RYKECN6"H:E:CKR>CJVA A^J=+[P4]D!#"O0W@3IV0O$4?)
M0U;$/$U.27Q_FD+G+B[&;SQ=/A',%M5I7$9L9B]0\P4::6^^@>J/H%_;SR#Z
M':^GB7.#R&VSYHZ@Z<O?38[CW=ZTA6M: 2]O+7<J$U2U\+=VJ5E4L :],@UF
M6+82+3&]+BN/>9JWO 7\LG*%7\I;FI>)"=.KU2Y9(:2M0:_/R;@5G*CU'F].
M"2ND=)>ENW<$[ =$:5%++*W>#K?A@9 $]IZ=$D?B=3LEB";8^V<R,G=9E%Z=
M\.JT.Q4ES?=9[I_?LN=]=BKXLX_G-_+%\Q-^Q:GR9M.DWJ#6C]'2#A%&.T*T
M)U:"C?>%>&<T.36JNV,Q&]XA8CUZJG0$(/V_7B":*]?K]:\9(-U;" / L]6"
M.>_,)G1F::&UB,_LEN.Z)+@NN[@N.:X+VJ/S$FRV1T]DHAF?S_LX+\\R86B!
M#FN+Y-B?!YOD*K%>+YO>$.^N;YA6K6&B?09BEY8:@1^^8];I/P=EG48!7&6?
M_*';U4+-,L>-C2J:.2XYRE5F:DOZ]+U1N(M3?$O8U;TU4U)XVS!TN19/%'I.
M-?J5-D:L=1!;A+EX][<I$#"CWQ@(@/$ \\LHS\]QNEL=LI/V0%!/Y@WP O_"
M'9?>IM+K2TI'SG]^ND+-(AD.R.6(T2-=#A<@N&]QGN,-C\?BRZPHBT]8CW0%
M!2C(55S++6-1G&@[Q!JRVI^^WNY/Y)S6CZ;%H3O/]+N%HOVJ@19)H@9H8023
M:H88/VI"Z%!7A5YC7#SB8W1F<;7[[4,>I^OX&"6WJ4V-PK$=0B:J&2NS:>5H
M.[M ;7<4K4V'-.WP@B4*+>^!SC8"59U@WZ4*IZ%8R(\S"<)AJJVA!-K(_D)6
M6D4)L"DZNT@%M*545ED KM98KY70)@%XLL*"UT'K<FBIAMZTRZ@T?G+83F+1
M%[1M$!ONPN%0CV]BOZ$N)!;EYT8N* #E^)986:S*$]8KC->R?+,@?=)*,Z4H
MGP</,7Z==5_'^PM5L3L2S^HAQF*%KB#U6"-_J[^__V+T=PC@Z1YB![UAZJN^
M\ORX[D+65GGM]4DAF 4*SR\6@)%*WZJJUP+T4[ [/?CB5G[><%7%[@**KVLE
M%E<E KCZ,8%+\)L;%O<Q?-^R,-^=@+\)\><HC^FEU<>HQ*O/L6YG*#8%7&4D
M? Y'L6Z":!OT*VWEZ;+#3,Q"6GX5#H96704"<+!>98<HUJ7%E37V!-B&5P,*
M>+L 0#N185_ [6-"!]T^($# >X,W.(^2FU.Z*:ZW6[PNR<[DZ2TZ4GZ,J4FM
MJ 'A;2>-X.9R*L3(4$.'*&$%J:6\'DM_'EHN2%5Q0.!0=QS@![7)WF3I;4HL
MVTN4_G9/6,KQAC)S=_OA_M&H3I;TL-MH*XDD^V9"AQI"5%%RV'W%B-79?V&6
MEM&RT;\&H3I.>)/LA.W!!J(^C_@U2U[C='=)&(G+FVC-GC8;U<9 !Z@N)@F&
M4&K:(TZ :@K/JK&\')!J8H6KH7I8@6I"1.@#T[G5 >?Q.M*'A:1-H6)#<C[%
M?,C,QJ.JG<\PD0/#6</P!?KTS>H;_W$C#2IZP:.E(6$507(;Z8BW\Y#6A:9I
MM"VV(&L,G2S:5%*!YYVL6@5A8=5#+,VD[*]0PEV<XOLM-^DZ1[S7#-+?[O.G
M/HZB#:E6\::>'&@]LZU3P![@9:>R**.4%K'RZC-+$""XQI+I!X$G\\9Q458*
M8KC.)VT-"%8YMT,8U*UJ@W6QS"4_RTC*G#Q#PE:#C"%Z-;  M[&-VQQ]C@^G
MPX<LS[,WZE1'1_*7\FQI@\W=>++1%O()-KQGN9N=$KU;P/I 32>H[F7^"BF$
MJ/;N+#)C3Y2X%NRE$6RM$,S70F +4]U"88M1#V]L:XM @SL?HB(N;K*\B9?2
M7VK4T+DG;R]Q;:0T/.N^0(WEIP07B/6#MEG>"9_3O_A:OJ9+W)R5Q;6DN40>
M?Z][K;&J?_!K#51O2^(CIH=]Q$!,711U'7E>%K4R6B^,32\02Z-3R8@P9/:]
M:IJ1;+-NFF'L3559[O"2FI4;C!\P013QG7;:Z^PNO7A64K5TUFAMNZ"9M%';
MB;<+L)/D[(BS)>+X7B!'0-)&X0QX]."GLH7ZB6Q.HLU]VKT8HZO/;-^%-\]4
M*Y?1)>4^*">GA<![MYW\KG\3Q+P-T_TT0U#O=YKQ%\8J9DRW9-U#2*N7.@F3
MY<K%._ ?3H>4+JBE3)_4R1&4$X[G^UJ]VFR828R2CGZKCNNM2*&.[^WD,&6[
M:^EZJQ&T=S=!HM:_0=%F@S>HS-!KO9#Z6H)<D=:[ @ -,ZLK 1/@%K=PBUJX
MO3"X%8P2_NK 0YZM,=X4-V3*ZI=CU 85%F?(%K2 2Z>-)))BM8P&4<3RY/C/
M]=ESX?OP>;I ":%"[# ]J=;/M50>R/71&G"2ZNUV: -_;?P+*[N!-RMBW(GY
M[09F[\FOGN.#;5X JYX\O3&VDU)ZG^.Y?5Y<]X*J;H;'$=DKS=!-^O)V8WH&
M@;G.;:C-?ZOEC2IY>X<27-P('7$>9QNJH*5$=%\OD1UPK7N$[ !J#Q&9!S;T
M\?J!/X]NWD9;QV/4'7B+QFAD,L9B:EI4$5^T[_[#.!*<(MRQ26'0B%D]BP\G
M/F,"I#XZ8T+CI UC&<5)<9^J'BQ+6\%M P?<B6!@#1!IX?'=KV8D!WN?Q8;1
M<IOC/)QS%3UI/ZU\:ZQH!X\UY8/=WO!X?*ZK'5$%XA883D?,.0WK7+AK]_)U
MXHC5*_D8WNC?KAC)P,I!&OD7"@>V48@VLTA%Y/.!"Y D8/IGB:Q^U4E 6-F5
MH9PR*653I2;B1#,O%A8>B1=WQ+!XAN&'F)P0KQZ(U0C.C"8KO\.3TV%<&D/Q
M-LRNAF<_PWHDYT+7![S-<KPB_&U8T=+L>8]YZ'*URS$K:FUX)FO? =CC60>9
MA'>3C!8UQ.B95N3#]2%OTX'7M[8^Y8-[E.N*S/Y372^PM'O .WWZHF;Z2EI*
M#U=G*"BJ.YC+/ SXTKDTTJ90*B_G4[AA*(#<KZ^C&=T>F)<>6BO8CAOB97"H
M=X84C3UA4;FDBVCT[25I1UF'2%]>T]BAG@F53YB,ZJ:QY$Y^DQTM%&8M)1F.
M*R?K>!,AN4G@,H'IJ0ON>FH+#CHK+9XV4:TO--D)DA_C%GG9.<(E/[7'M^2'
MOSP1X=CGGM8XC?(X4SA)FK8 6J[C5!C8ZL]+Y<W]_]K[VM[(;63=OT+@[ETD
M0&<WR=F]NWL6N$"/[9DUX!G[V$Z"13XLY!;;UHDL=22U9[R__O!%[Q)?1;'8
MSOD0Q&.3I2KRJ6*Q6"PJCE@=LNI#(Y48:#10"8#U(%I_[(>L/.!=LD]P+/2@
M%.U]057"L1@#:]7,U0&L2X:]P5:%BP%T5:#PDBAS=WPH\:]'HD$7+W3S3#ZE
M*%4N[.$Q%4;,]00;;4O$FB+:-H":X(IQ'R> * 8="BK*0N&2/K!P$1N3>< $
M4(U;.?X:H &P,*/<)9ZS1(\7949&U@DNY6[(NSK-CK=GI]5@#]<9B4!/?#=-
MNAP[T)WP#9@T-P,=1:+<#&X ,%^_T/-Z;E*C9M@)#/,CWI68;]JC\V#JRRA$
MX)A_;OB.@[K(.P<=.>;G< -<K(EMTF*MBA,F1((HT30CFVEU)DXB@'(3BZ3D
M:G0"Y9A$:-2OQ"2"HB<U*Y*7B-9_ZI@KMUG\#QP_)MGCEI:&8J_!G2?E+LW+
M(^'ZGMX/E6J=-4VO2F@O^50G&UH]S2Q1E,6H)H<Z>JA'$/W,2 )5M'_;0Z!M
MI@(>!+\V;J$IF)J\A78 S +>)N4OBKB5O!NP'>OQKP51T"?X5A0 6GW&.-+1
MD#&(/"O!69Y51;33B\?)NX$HP2S_$@PU[8&?]%M1 !@E$.-(K 1B$'E1@K,B
M+\NS8U'@;/?:]] ;OI0/96A3\*@:^E)-TW)(3]1T'>XS>[ #?90)2CJ?2F6(
MR[%^&8(RV&WG59+ARPHK OV+Z :^_>R/@,.M!R6+&%WPQ2_DL8!V)HWUP\5^
M;*(<<.;A _$'KH@IN\6[-"I+EN) *_ML=[OC\S&E0;3KLTMBX/++;)<_X[:R
M^4U>T/RV3UA6F6J]3T(;%3?CIJ=C&T2_AKZBW_L:];_(RTOUOHG(1VF -T?\
MLYO>:P+UES>(?#L@D[3.2/+RC+22#QL[HT%#7]4/VGP=5/C,RT#9@"PXF^[0
MJ&F9>X<6S=\[A6?Y\Z' 3P3G3!C*%Y6A$_#BRRX]QCBF#?.,G:_L"AS1=Y[X
M_^M+7?%_'\N*+WM[8@;NHR^2%6']3_M^0W'=<9Q_D7'PS=9J,=6E#X@U7R;6
MO_XV:C].CS;Y9]%7#0.DTT-]1[)C8H,BR@8B?$"908#Q'>Y8V?OU-#4ER5@V
M/_C+EQZ4=O8=30\:N^2F7%0^W41)W)NIZSV=._'%34D/;W?F9%Q/ BND,:*M
M^W"D[R"S#@ WC<RY/U#NJQ[WQ.<HY[CW=_=/B9OA!4 _H-&[!>AN^/T7.Y8Z
M4>]>ZZWS+4X9H^53<K X-]0A&,HN4B;S>#*;8$N_*="M)4C9@MED*/%JM(50
M@M6+@L[PH#RVE/3QJ&8RSO70!G2A*GP!M$(\J['O4]^5\!^KM!+[?HY:R3+_
M/LT_U]RH#U;GV_L\1A5P/.O T(;M4<-J!Z2::NJ><Z^'GS*D3(XZ93 !CU?U
MN</M*LHVFUTX;L?4<IO%]L$IB^\$$HFR&2&+L-,0Z7AP:-'&E\8?9,>':T28
MM!:KM4=-&%O/'[/DWSA&Y)<TED[&H7,*0XTQ62N:24#)6LO@]JV<^;;(P56^
MJW?CE/WK0GTN8+JO=?!!Z'VOBS'3/3NMS53[,=1\S?C,*Z!#TS4&<#(NC@Y-
MP7?JSC14:R?O3#T7!L1;,RJOR37;U&<(?,JGW(?&D/6UW#+L-= MP,,DPKTF
M&+1#VYICO*=C_$3;N2K^>?%\2/-73+R-BO!)N.25N;KD+=$]/:/>OO1+6YKQ
MZ#8=4=NS*0G7]86\7F4Q5P.@ TR4%O:73UC13EA=&BX>3Q@R+Z2]V'.^*3 ]
M?ZI=!)H?R7<!+(&ZVI8EKDIEO,J$B-<'+PUDFSX4R3JCIC?;$->[;4X <0K
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
M%SBBPT^6VP=Z]V$GO"P@;.[+[13SJX!1B7YN&GM_Y6T]SKWYQPJ<#-QB!4@
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
MGYZ""G2NKFO.?"^5HD%45;S@40IIENI\![@ZBAW/RM)R!*>T1!^JNP11.M&
M_3KPQD)&L_44 ZJ?.$*2HG#B"$8GM1J_1$E*/8OW>?&!&D$/B_+TDR>X-L^,
MFY<ENODN6[;8ET][K=8=1V(X!J*_U15;I(]K+=PB9?1CQ*CUO"S+X]PKH\+C
M3FDBO2U%GR;(6NKY]Q0XJ>%;P?69%XU+2#(6@,Z\' X -PWM$?;1.$G#JXU8
M!O>)"5B&];#=E/.DW-'WT=^34?P8%;_@ZH:^ MQ(<AY5JYP.:7WV%-P5O?%;
MP65I/HPH_A'_-&+?WG2:2#]_8GZ+W8!*KZ7'S5 5,\-Q$LZ+@98Z<V ,5#1L
M$U>'=Z^/55F173$QX-PW6_'4>^9;IV#,)".UYI%.[WO-5NS$C);!P'5;S3I9
M,.\Z.9>:W[*YJZ*B"D'V=_@QR3+J/3]$*7WOJ+_S7BL]C(_!11:', (7[,\^
MQ7_!Q4,>/O0WJ*+9!">Y.JL6&->)&,+5)>QUN*FE5U8%2\Z>Y-6UN7KKK<_F
M/)S"NFTQLBNLYVVQPY:-F>S?7E[QB:[U#@:[,X3')L>:6\23=  <#,B,8] S
M<H)SK/DC+G[\=8)>A(-A''L7;L?P)-9BVT7&V1IMN\*$O7;7O+.CBS;_\T.1
MEZM4VY%][1368^EHK;F3YE_LIX6SKY[JID)O +O5M$GU9H>6)Y==923T!RZB
MQ@[R),RVVKZXWD1)C ND*7X@ZT:TLT@/:3O"&\A.!FU;]W/3*<2Z6:,YT43B
M:$+6>/1-G(BGV0_\V3=Q7IOT1&>MU#S%NK:&+.$]^"9(RO,/J65/OFE,QUQE
MY/H*KO\+^KTJ)'+=5G7PG6(SQ_-\!DV36<M[K*O*^ADR^OR'X&%)43*;NB*$
M2!A;SM+(46L*R6UY';GF3B([FEZR%77)!;P'MM+HVFQ=2_N]:ULTL&:GO?C,
M\UR"W=6N.N;MQJ_I]\W\Z-!1Y.,>H$>]IO8;;Q3=J_YI&-;)?6XHVVK(R"F9
M5],Q7M7"SM:->*M&=NG(-W__S5A:*W/@W-A:V8(P[*U^UL9:AM85!R%96&>C
MZBV#T;=%A4AP,S6FHX-I:XMZ$@D1BX=K)AWB;:Q!;DWDBGEU;V;5>9\7>YQ4
MQZ);45=<86:_=D*KR?QHK;ER]+[8>>7NK-[?^+AEK&30Z@N$WO#5K=[<X;5$
MU5Q;*HF>A6&5U&[^(2E8IP"B#X:LA&3/W(_SRA&(EIW?1@QBZ>B?4>\O37]+
M40@KP[!"',+**H1A?<UE6]$GG/U:2#;4:K36+7$Y8R5/U2?4&SYNY]Z<2RC1
M-/?5>85J%H914EG<&9\6RB4T9B4D<^9^G%=U"6<WP&_7)5P^^KWM\V_#);0T
M#,Y=0DNK %@*G?VV5S24/6\TR@DK!TS?TL'HQ4%KT4=RWF+Z+#CY\UF>L23G
M8Y3>X^+Y>Y51#H%#\"+K$+.B:\(WTQK%@R?*>IF;O82"VMPP-H>W#ELS/['G
M+;>HQRZB_(94Q3V$N1K>XIP;M:MD#V_B@Q@[L>4/@3UP=]Q2YJ:6Y51V8R]\
M!0[ G>\U1M6GP>YMN:>F.Z1+E#X&>J8855>Q!MS(^M-H/?=Y-74^/2/YP^&
M"_;35?*<F-_@=/794S6'T_'S:0/9U_D_$/O^&[![ZA$=N)9,=F+JV@$Z4$IE
M,S:SHW*R!E"@K:M:/8&JOL$ P:!+F\WVCB>SF;^N!L7FFPT5*.<GO'C!RO'?
M &,$QI.T) OY[88+]&P1;,Q SQ"=VJ.:FH$13Z]MZG,#;O;7'FUO[W.>:-37
M]_CWJ)Q4A->+55CQF4]3DW!ZGGI/6(V5QYMG;LP6N$GV-OX^/>^^W?D->=[+
M)T6^R+U13]O2EJSJ65L:DC RXO2N0E/95G^P9.9;X''D92/ES<<]R2+F!@,W
M>;4!]Z4_^5<;A%KF/D%7H&*G=]1UE7^&..J:?!;<1#D;/Y]>'_OZ&SOJ4H^H
MWE$7'YNW==0ET-95C[H$JGIZIJ[)5)@ZFKY3G^8X.%4#*!U5F-2GF;WP&["+
M1@,]X]:^X=0GL49[27T2JW/H1O+=ZU2J[9=D)8,H_MII&#_):(E*SO5-%/J9
M-IY4Q0_>%*TC]HD8'96&.#0P*O4(W9A,N3_/Z2F,+^^J^=II&!/):/GSFM#/
M_*.G9Y3"'KX3,6XJC5W5>QJJZX(W51BU]\D+_H@%H?7Y9KY>3)GR-T8H!Q-M
M@G[FC3PKI":?O_ONSW_X]COT#?K=]]_^X=MOA<QZ>_A$,/6#=T[6G'>M9TUT
MYW]/FAB_52+5"2*/CD[TFOG5B3Y_ IT@3>!U0L;G[[[[MM8)JAS!Z,1DZF=T
M8IUY-] )]?SO21.G.G%/FN@L%(-V7K5BR.'\L+ VX'HAY_1W3!VH7@2T5LQ,
M_U0QUII[?<W0P4!%VSC3C?;=8.:XL</.&](!%T7]*_K:TS:+1PWI;Q7:Y("R
M-_US,0J3V9I]DAFU='MO.*/MW!/.["_PZN,,(4.%"PL>>BJZ,DSX6W81@\FA
MA0G_[9&"@;[T78S;L[\\,_( +][99E0HW]C^D3VPO69Q0V,6P -,JXSK"EE6
MG G4XP(Q-LC:%65=#A9GY83K(RX?;-Y@,V_\2Z;P\^M(@(=YZVF]LSPN2Y4_
M<5,Z?/T,Q)2.67@3IG0RKG"F=/SR8DAQ?2]#W;ZI^+^65*;T_BSIO,:?N"5M
M"W>"&M,9+MZ$/9T;73B3VG+SEAU4G2'O5:O]7^.JL /^[*O0"+P-$TM+]([N
M@;$5Y9SHR_LH*7Z,TN,J#RTZ9O M&6;=.0&WV931F4N=C%E$N4647<3X?6N>
M\L*YFBE-;C9^;\K &UDA[[;?R 2=^++P*<]>6&PFS$7!A+TWL208S0?<@M"R
M";8<K/^T[[IS)7KW%V08UWWT=]V!E+P(_%M<8<T-NK_UU=R:G_CJ.CSV"'.)
M->;Q3:RSYC,3SGGN;W4+MGS.?ESDL[R-!<+2)D&=%?]6EHKAN4Z82X4QCV]B
MJ3"?F7#.JW^K2\7R.6L/OG_+:X6E48(Z#0]KK;C,=ODSOLK+\CV9,EHX-<F.
MK,XUKE^C?8?W>8%YN_OH"R[/R0]EE>PDUGT158_V>)GT8VWDK=!7E-[7B*H
MZDBBCB9Z8$11W9Z1W:"&,(R5<SL2(EE\&AP'R!Z;" >P#E6IWY-_)H^R:_M+
MB(:MTIWL;C6ZIGLR"BT>!X$D@:OS"-,.M'D$:"_*?'8L"N)5M%Q<?*'."7Z'
M,[Q/JCFVMP\E*W\N4>8E1#TJ\R+9QR"NB?64%-7TT%<UQ:\W OW^N:$+5#1C
MC8'X3TAU7H[JL3HOAW0 ZFRML@&II:7JN5<L6MIXF6(9B1*N.MFI#(1:U NL
MA5Z(>_I7#(D4(CC577RIAL&:8R!, &ZB)HX$FJ "D4]5N*NB"F^S^(I\)+50
M"%5__VJAE$BD'*PC2S1G70-4$F/16(< %$4/90)UT8.8U_4#Q\2[LU$7<4^
M]4,LA7#]X%T"5 T#8>JF :B%"D>B]4,!(B^J<%X7CW ;,5A$U:,*+9-^$LAN
M"G&<8M!@G:$ #1LXP/98=1T VZM:US;&/("@2P! 694R"?6R6??\1A9,M,]8
MM@!603.LB31*#VA^E8=O\!8HCX( A/*H9!(K3QUT"%AY3&4+( 1AAC6A\F@!
MS:OR#+9[]BJD1P9 D33E$ZK3.$P1KEI92@H>M+!!HDC!3& 8PK[-?F\6TO[+
M=H\%<SKD5IA[Z+<V-1%FN$-R4,V_I7R+J2A)FK"-UH<T?Z"Z69$13AY2^BH=
M3<.H&9E1B"7$?-6;M955D)M$ 3:DA#@IU-&BSR*RI*0&EKYKV3@5W%P\;_5R
M%^%X4"(7'L1:57$=@[DB8"Z&8'[DLYUTLYV2V:[8;">LE__"MP*I/^59C./C
MKJ)LUC;R(X[2DG@9%QEQT*HHR>B02I;RY:2]YUHN&H?)C?/]'I..+_U<2G1+
M_>KA-]CM_NXKS1J[0>Q#S D??&J#ML_Y,0-Z*W>%@1+("9^BN5PMYA,UE^N$
M>P>%W?38QO]]+"MV\X/N*8YY\;H]QK,.^P):P.Z)2E)][X3?".N10@TMQ(B%
MY)N82GV.L^>H^(5+5 E%@O9'M&"KXX[XP^P2;P0&N^M;FY^2ZNDI3VF)%I:=
MOM#@3,D%9G-FY%TR=3UR_,9&R)9'0_:S*(OB2"U6:-9'!&,; [0JAEW:()]8
M#FU/-'_3]BPO'6V,9/3#W!U)1\3Y%FGV!G]WS_EDMDI&H\8:HW>3\@8GLF%2
MZ\R"79-:8=P[,S>'PU4>9>_)V!$H9[@T=5_F"  [++,RZ9OUFYL;1/NC'@&
M9_Z6"*<C K3_(4:>CL>Q,NR6^!@F\)N)M!X.!Y32N=MW!(*)K=X425[\$T=%
M[S:NN;<P3P7>)Q!(9[_R,X*(4AS=20]P:=<4_A97QR)#54Z$RU^2DI4F:EW@
M )=Q&60U%VL97B&UD?SBK,!Q4I6WN"3L[9[,=7&.!KPFSDIFKX?T#YP>>S^#
M$72OA&8/BBR1_/;WT?/A[^>U3* /?!A#4U/GQ+@,0^-T*[7HD A)W\351^S4
MK:87O+8IJZZ@<UP0X>-^Q@-<GH,M3HVU#Z+6BH"ILR<:&[G,FD0HTF!;EK@J
M:;TV7B8N3?//M*ZWN5H:$8=76+.QL%=E_AU:)+)-J:-M^;=0^S'4?BU(WW;9
M:'5C,"-O@,IOH2>:9L%"22 -QGQNL<V.54P)WA1(I+37>W$2?:#;5X-1X++5
MHGS"%<KWPXO;;)0"5&P5GC6U6 5F2)4=W[>AX#Q/R(30>]U)- &&>M#4%.%5
M6$-J>U6>N5[&VO4_$*1*6XQ*(^M$P "U61?JFEJMBW-([1X?OYMK\Y0"O/;.
M2&6OK9.D@B!54T-DUB1 M1-A4%/-1 !<?#1;15^&)T$[YFPG&9E;7+RH\LHT
MNOL]EM619_Y43+CMN*U[@IW&VLC4[1X;]LD/*8U9T4.4[=T9^LN?OD572?1
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
M*#&H+Y(&09:VY 3M/KE(4!J+((.C,3?A6S@A\21KW)M0%TF!3O"J>(?'MJ0
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
M2K0':<A=#N_UUWJ"I"%U[Z+D_;EX?8W*K8<?-;/(Z!_ZM%JL)(I\^M-2FZY
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
MH.IEPH5L+;S'(@WF /8Q#0/Z.'!39A25>DF36)2Y*\;338J,H5,T7!592'F
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
M0M(%=;^; SSZ;^X10*N5VM3AS.K?":*IQ(R&74/S/"K!CZ=K-)$?<@GF5JB
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
MK1"<*GN![_9I]';Q&B5+0AK;,:FW&[>.=X:>KKHWFMEJ)1&%V^ZS3P36[S"
M!;Z$]ST.\^SI^;M4/X3U0##8!LB!=41!'&Y[T.X U-6/M2!L,%?BZ453#&X[
MT<(QOSSAEAGVZ%E?JA&<&B ,[ OZ@75"* A4+UJ.B6Q'B4O47+HE-<K()MA6
MKJ$85Y6%(0?;R,PLD*5Y8P: GS:C'W[P7L*<'@/OXTGX%DX*/^(<9+EE05+8
MNX,^#[,2W!9ZO.H2_GN8STNK$+7KSL/7E^0VSL-\R3V?MF@%A(6T59#PIT"V
M"C)3:;RQEO]Z[I,8L9K%8*Q@3_M#V+#V(9M*PXU,M=3ZM+L>8N6,Y#,A9JS9
M;V-^E";W82_OR<L\*3(_GMR%TYR0VJWP/J99O,,W0I&(-V8:3< \A6QS9A'#
MV&!I8S+E26F4W"TKT^/*,49*J*0: $:>=!5)5,+!(0[7?:2A?L_DK=N8%#<
M0K!D2E4?D2J(.+3B^H4T,-S2A.$=9UMI&R *9-]U?7(507'X'<C4)><7SO(O
M[]#U)?RNY33<KC7O\/CR\N(2V2:JSWLKB!PMP#5M/:9ADK;D7*5N#=^-C90>
M( Z?VE8KM N-/*PB%E)P+_X'#:]4R"*!"6J!6*UY?-3C^58J 8Y>N/.FFXE/
M>OH5U@/)(,>(D]*FQ783%<=#!]62);%HKB.I/<..Q8=93V#"9I;U3DX.+B^M
M"?O7DQ5;#)W#N[99:YA;BQ6$[W'V2H)P&I*)T%S-+5_A1_+5E+/"8%&*A,.D
MMK'+$),F_>MX>O^@$N6I<^,PL.QYP=/?EL"4H#AZZ(J;76LQ?"OHSKJF*!L5
M^3Q):1B)/G23]RTXJ2/[GYO2(L,Z*A881V5=\?YK+97Z4<^XR+/<CR=A/*OD
MU(?*\KX%#&#/KG:JK%A@')5UQ1&QJU2^0$&:O:!ZI_8E94<_ZO%KWAEV:C*[
MU98K,H[B:IN1\?(!M97,RKZ>Y6E1;M7*@$ O<S^N9?8MB=](EI-)?[.P;A^
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
M#&6NV6W%&+0ME2:L2 ()89,8P+ Y6JS\T*>./BJQ(#],+BD)UL&.&3=L$DH
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
M(A$@#SKT)!_>%\H>8L@1#SV@AB#MPQ6X?GQM"J\=P.7PP4V=I ^W>3+!9<0
MC8C8O;_KW'3@H=8OGML+4C<,_A(^OJ\?I@HFN*[(BP4<6OSHB[; )]![W 3.
M1H)[^I_Z;L/I!F$(:]XEA!@,?**/%EW'^ @0.2+Y]#/R@P\)26Q MT-R_D,*
M)^J7G23H E?<4=]U8J0&5%6J6BG9?4A *+Y6#]&<Y=&/^0X"=A?H0E^"8G<"
M!R.IW$.41"EQH[/LQ?H12GA/5F?@(1)PGP8B&56<9M>&9E;)G@\HP/UC 06W
M!%&P76 *W=9CP02WB'![( 1,]K$0@EN\?KAN!^[U$+NCCXGLQ_2)3)(/2MJ1
MI!HG[9Q/CKI:D,@T'P,?OV@'($>(BXI"3>KP]+>\P!R^&9[WNO#Y/1+_YB.8
M2'%Z!!+J$RX15;]:7=^9_9:MU=?7[L&%H*YE;_'5E:^'WO,Z!Y1"&#63B\C
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
M&KY$K;W>>QC^A1;RP:%&7!\_TJZ""-D[ONH!ESL"J=RB]V99=&/IB[:7*U)
M9A6;0X$=QU<X:JD/'S_Z0=(+W0%P==S7,^_]W[_5W]8^*I#9_TXF-*<-$J/:
M=KM!./C@_.^??9E^O &!F3CGXMZYDETWXB_5E4GP%VR__G88]OMC"&:1(*(%
MW3,UM&3HSW#UTS;ZV$5^.S^].3YRKF^:-\?73@%.EHF9<4=Y*S%S?7SX[>KT
MYA30TCP_<H[_??AK\_S+L7-X\?7KZ?7UZ<7YDM%5VQ9TU9Z"KM_!N((+4QE5
MG*/=PUVG47NS_WXF%%GOGDE0+ 7&UGJ6Q-^G;8FA0-LG+8$%II)_C?K?\^J&
MIO6<''[[/!$[<G-.Q*Z@0%TF\]Y;26YP<G'UU<DIJ)T@%?0VV$4D[V.W]W@*
M1XT[DA$9)8'G1"YZ!GP1?#B28(7#1C%JN>,H$Q=T;NQ>V5#=*W.#DG<^U6O5
MWTCISAZH$%?$/$JV4;*-Y;.-;2&U__ZOGU.W%0H@@S#LN;X/3_ME!PQG_*R>
M3I_5.ABM]!;'XPDU1!B&ONJUVM^?I6\IPH&GAFXO@:_U7^:GW*:+@(Z;BO6*
M>^ZMJ+9BX?Z JY+ AR>Z=Y+($*_SA^SX?5C]G8C3P'-#?40 KNH]_ 49]B]'
MQ0I_TSAR,XKZ;G@E>C).9^/,@(RXZZ:_[ 2PU41X(&%DV'+#4*8M^8!$]/Y@
M_^W'$=[]_+T\_PGJW]3/8_4)J!QUX2S8>LBSW@AQ$&Z# =$\/__6/'.NCB\O
MKFZ<RV]7U]^:YS?.S84#EN -FGOU/>?BRJF_>>7_Y%R<.#>_'CN6D6@,Q.;A
M#?Y<?[^W/][\0-* ?]#'1QPOMVLO%&X,T$D['[ON@\;%6*:^."WSW7HHF<^F
MF'=/(9@3&3MI1SCM(($C[0P 9XX "/C.5&9X2;&88VZ9_7AN^,&'VZI=N*N#
MSZ[Z[J"*KZ^*:()NK$:XG=!R,8HQU_?CJ__A H^/!PY&H?),N3(=)MFZ3N";
M9$;M'?\=U=[SGY?KIRG/S(0U O\L]=U2W]T"?9>2 "C9<NXZ[WZI\Y8Z[UQT
MWINKYOGU*2FWI=Z[?C)<:Z"IX34.9_E0!H(S AI?>#*F-(4/3A_6'--SGBC-
M1O\=@Y#RK7-^*]Q9XG9#WSHEYK!M' Z+CX($,S+!S 8].>I3GN;R DK'E'YY
M N\^IU?/:);6JO6]1JU6QI7*N-(JQY7FQDX:(ZKV:O*39^O9C2?IV5/8RY6X
M#1)4XM)S^&5&%M.$.^2YO',KSFGD[:Z8TVM#<Y.>Y/1Z=?S@>BEAW9%M)S;8
M=MS$27K"PR(%WPDB)T@3Q^NX,3S^I])15LJ*59(5VT)JC_7)9K3UH/+I%^FE
M?;<()ZWU_.S78=?L&UCS3H%_3^^IP'/+I##IKOUWYJ'D%1I=E@;0$&A&@3*K
MIWF:/[*PK&*I#N;'B;3)J@66F,8]9;=2+=LACAB.!X?2?T+DCWS2"3ZF%\L[
M?!G&_:XZ\##G- G=R"\V>1[G(L[H9FZ<[;%>Z76C@B4;Q#?NPZDJK_2(M!YG
M';^IUO;J[QKU-[-02]YO_#0.<;!P#C$W5?I@>X(6!T_2IHF+.3)V)!;4.W_T
MXR#Q X_<W[*]5+-G)ES5MQ=7@2U]"&7QK1L%?]'GGR8>]E) S!7_KTYWKW:O
M=YWC;B^4 S@V>?;MG,O=0GR,9[LJ[MA+A]FG770YEU![AAO0<^'FZ)>=QLY"
MW[;2NNCRG3;KS[V>Y+>9H@,U?3\62:+^<P;WU&?4?][6:LZQFZ3.EQCTY_O
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
M^XG^<NQQ?+RQ1=O '61+=TXC;Y=>C#X'$$O4')8"*DF_!=9RX,8!CY1<+CJ
M,_LB <*HP'_O1"A[%9PFWT<9@BP3E^QCD7L ,@<^.JU8NJ C8;$#LEI,0@2)
MF YPAF=D"MMA:RY(T#_[09*559HAS<D@@1.9TPQ@0QVG TSUWE5O360[Q0]:
M>%LSX!S7OT,Q#4)/>)T(K*?;@&F&7HGWH'((_Z%7_D5_^)KW\N( WUT0%T$O
M% ZS9Y3# %T0FEVJDTNHSA\UA<)UP>.DWP<M3XMEQQ6Q)*JHX(16N 04#S2B
MNA)3'>#O.X!$X,&^O8[HHNJ*?P(% V1CFA_=Z^"9Y&^[_2CPM%9D4,#B3$J?
MUM("E,5@:%:THFKA#J *.HWK_7!O=8T)MBI(D*[IL<LGM@N I8$:@C"C+!\5
MZ] '>Q75[%CV;SL$>GD/Q\X%EH'((,CV0<F)X85 9 )^0!V0SI6)/J;Z!Z7-
M*[134>0+G##<=$M+"SSYL&>>F7@O046[5:K,)</%.6656Z'>>:48U>6I8E0_
MT:YN1)(JUPP-PODJ7$PA)L^EON6&?OJJ[V--Y_)4OU.3;3)\ADFCX1.J(!@J
M1M5#C3;!QM:^4@&1%?^S'W@_SERPA7Z&2T9=[ =O1D>QD9,--G" T\KAKD\5
MYR:6?[C1<Y]#*_XB4GI.\N@'O=M_U]!/:L7X+!SPPAJZHP Z"D D5)P!@5@U
M3, PQ(I#2FH$C 7^'\C\!X\\UN< #R:@D_[H6G@<X:$:*4/P-U+&>0[<LMWN
MHH'. NQ<ID(I3N\J6F:>NR09<L7Q%3#U&2@L.#7'^2+D+<C'#MGI5B5&Q1*[
M9(OA\!SAYR5CV[CE+04;L"KTL$V6V#&+:F36V1VVSAV;O'I\E3YR+\ )(J?9
MO^T#JO?--&^A19;/>'2^HMT)I'1V=FA.<NX7?9Z1[3FG(="=#)(JC]6V)'>,
M"#+G&2>8]W#;MLP-\8SDY;8^ZZX'2E@B42<!J])MM8B. 3MW8%QKEBLB4AA
M?@J!HUIWA[9@<(,/1 NMAW-:85F(!HL1M02 F=P!5">)- V(C7WGSS[<P#MI
M!SB7F0;&#M&GTS"4V<P.R],)S'C5QE':\@D'F4];AJ&\1R !Q_% 52#25L T
M\B7IR#X.J6>3%A<.&_ZC'_$H;0*O@M6S.V4DXUME:-BCO0LO29B%-/:U9.?/
M>P?CY_4^RP:>Y+(>08UCX^+=T#B2A7F^"PRRNEY\&7Y8H?##4?ZP66;_DL,0
M6C^\N,-$);APR<$',!1#96T8KRW(>3+@656Y"Q+L/O*7\NL-66;:RAPV+MG6
MFJ"#5HJU(_-K3D5525RD#"2"@@"W,;--;=3=AK*%+MSELW$0>4;K&ZM#YQ3A
MO#;+.AI;3OV$78BLMDE,/J:+T7 4,7%J%]5U94&2FS66=VA>J35DMF%%P8;^
M!!O1^T%_T:/I+WPP*0N$%AGVS3-=ARPV-X[= 9X/ $T?33JM,EM27J+#'+6
M.W1UI'2Y']RB2\TA#J3T$0K" A+RBDF(1\'>75YYJ4R7&%,O\"F1%?!?9<B(
MO&O/>E<'%E.] SATA<,>?T6'&16#Z@2@A74:S2NOG&G5[N+8&&@%E ]:T[T(
M0]:>"-+&\1(RL:0N*]KM4#P$.#@KL_AUM((\3"GZ3>P BK;F;(4PB'ZP.2*!
MG.#M6N, K0!. *("4(ZTHLBD@K24XB%C=;!#L1.D9Z ]X<8<2J&08)!9_KO.
MA(.0UR"9NHV&++4"K5H/:RW:#1.9>6%L ANF$J.RDC_(@$I#/L]->MC= /0A
M9<O [OPPITSO@DE#JQZR#$FO[[C8D\D))=S!P4I:43_1AL@PA]3GTS(2;3.<
MB([F"]#Q XS3D?"%QTCSW%8098=&]ZC,[%$^Y+1F'*3&KJ2"U6=V[8@%"@>$
M)EU1W&V,$4HXJ^"&1$2CW#@*:U&0PJ>"-3Y1R0XF(^3:,3K*')08\"TM@\)L
MH?3450I(0KD:X>W"58!*!*CX<:(C.[1B=1FHF@JIZ&Y6SD%?>0M]VTG(W!4I
M2?83O3S93WO]-',73A @[\8($%OK:3Q6@$P+2XSQ(4T-.BQ$8;C(&WF&J, &
M$.ID)Q_&";Y*7O*!9:DH%B5W!9]K/8^P#.\(!^.,:>8C5#\?*);#W!YN(4+U
M4: B=7:,Y]&#\QXA\P ;U)3VP,7 L3-R1N>TM+($8J%?A0%=P^1('2$O)CR
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
MJ6':\UV9(1;Q NE9UDAO/?/'2!AC@5J@I@PMV%F@50#;.-&=".\%-2P4RO5
M:A^UDBYX!.B6=T&<]H6ENO30!,%4%-O#IYT@L>CU=;:<JNH?5.S&1J:9&Y;,
M9[%'4+Z4.UD92]11,<=7V37';6+L'@ZH\))=E*@T+1,EW75^$X-<KP<]H^:.
M4FFZ4O5$RX=6<<R-":!9>U1U"!6S.DM.Y'OE&PG#IC4 %I5A4\26VR(U*.0
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
M3 *7!>(]%@$HS_!+N$DCX_ZTH$>MO+*!)ZT!MM7%)D.8@8U$CY3+CCOZ#21
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
MW&<+CT1N,G<B(MP0OS:KA$O0VSQ*+'FBY>3_H7&SU_S L9QF%"$("MTJ&A1
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
MFS>-X8BZ+##2[[BP2]<B4;MVS<[KS)34E,$'7O+MT#JJ8NO1(K)"L<4C<22
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
MO]KCH/TI+9T!H2/@&.$WHKI)M%<=5O"B E2S"_\P<>T:^8XB#"\Q&.=1\TZ
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
MIL^C([J5TA0^Z(5O3O#?ISY[ADVD]D8QBR+R<1 /DUF(TJDSM^(ZR-(WAPP
M78V- Z.5\\E6SO>*T%0(_L;<U3X=''63*^\O_--0_A+TAYX@#XHA-9/UZ%F.
M8GH]_2VVU*%!<$*].3&S4A2.D='X]N-K6^+<C4_$G/-I?X,VI_C5]\ZM1E]R
M%-]K]"4)GT$:Q2G8I[B'9*K%I/;D':GHAABX+9JZ;;<2<YX>D<_-L=78 T,1
M8B<AC8#Q5) 999QFL.+ <)D&M*\EMWZX6EHA?<:*$>HH*&^:7=43![^2H=/
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
M55%T;<:Q<(5KRMD#7*/^3S&=#<<,&PI#2DK)HSLL]6[!O6EY**@A,JDK@_?
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
M/9R4WB-'36ZW>85( _@L/KS1'<?;0(/8-:][W;!P># &_&^[82%"E"'O>.K
M0)KY7TXVJ)^_DGAOK-9)/M>GU=*?2;4/.2K!+KU0"WK[X^M^FL&<WW.\[KC=
M2AQ5>1U6/-M\KHR6S/UJF4N)KS[/-%S3J1SVQ(<C!7&50Q0!&FR7V%(*B%>M
M><S4*Y>Y6'.:"R<;6Q2N6Q+&_Z2_^B;++9T6\#&ZT>D"R&36 OE/:B?M4=%H
MOIC+@DQBA"N #'I* )W'N$.X@'")79N36Q00@>3648=O CI^9JJ09CDA-9QR
M?S\A964,U3K<E3Y0&#+8?[J[ NKNQ2--BZ'ICPDNN D\<#$J&,TK$2H/0L >
MTQ_=;,%FP603@]CZ:E3UY\RKEHAAZTN^C)S&"W[7,5)^]%D2/+D4&S"3!'T"
MXUR%%D*Q&.PGJA+^/=76B]PSD9-$+;H<*6!*UY@@5PC[^'Y)Q/.D:F7*Y]0,
MV3CWB^RM3I]2E1+A(,_:?JYD#@C>L"BE2[//KL(U1EC,PQ"/49*NX8J^$I$Z
M<-P^7@I2,-'/Z&QB_A:NT??]+Y@Z:;,/.GG!VJ"'4J\4HY-YX>+J=:*[(*?B
M0OF-Q3?JNQ6CE[H_.22JN2Z_^F00A6]0N4Y!F,Z[3DM5F\,R)/@&;--7.U)X
M2KER ["9X0C;?2)N%OXBR6=@GU33XX/'\)__[^@22$RM6TH8XKN]Y+<28R+%
M&?=0S><4>*.UNIVS_4M5GN^*7<,J]A?M>&C1(HR1L&:'>[HNYW_CHEW N"5&
MT/!6CV%W+WCP+:;!YQ5&<\CA8WH !(O" I#(UC,1?ZY_(W6,UMH:,U<K/V^.
MH_Z.4'6_9_4ZIY88:6'KE?P%0R[#I*Y7AQFR9+4++ 7)I8184\>,62<%?51_
MQBB>0A&RV1(RLQR'JX]E3.CQ%VSQ&UPKHT)P7 *Y H_S[_O>L1#*]UJYWWOT
M!<>'7_Z-(?O[?^]Q$_#,Y9W^2_R5\__]"0_NC?6)_I7H!2[%#9%<>DG)+8Y?
MRZNJFWZPMX^N-->^_OL^_5^?^T$G,]"C<VD/[R!69\^N#HGT4\4MIIZ.X1(;
MH/*\35P!CC-JG/_K;X>>&D.\X$]=IPOU[DF D_VO20W>^3OLTY9__U!5+6RZ
MUX=7F^>GK\MUK\6-"<A08.:-5]._-2ZF\0@ZY-K.&A/"9-/WBQJC88\D-@/6
MO)O/^Z?P.DA2K%^'>X+!(WL?/M)?7C$?&^ZNM(<P$#6F7\]!W-D >$D&FBM]
M7\6;XE1_^_;@Z''Z>'__,PSGXQ;A\GKW156#58]I-8/SP(C.+JNG7-$_PS:Y
M:L5=#U%1/GAIF?J24C7^V:Z@@_WM.^CN2O_WQ?ODQ[H"3^]_\Z*@2HY7B I<
MY3<M[Q=J]DL_HB?U1\?I\9./$_KKOFVN+/<Q=6DPPU<%XK!@^%%B!%;3WP9E
MDU:U%)20,Q1^IGY$.G7$KA'7(?@CUOU8<5*9P9@QOJK?.H>(\B]E\1]\C,5_
M]+DL_J/1XA\M_M'B'RW^>V'SO,Q=^Z<K82*G:?*CPV#PYJ$8.P?/TB=']]38
M^7DTV2\COB^JE2M/L9$C35ZZ$ED_'HKT'J?//M(]O77A??L?V7+US<N;%ML'
MH(Z_JRMDZYNER3\[-W'3-'F1E=DL>SA"_;$QEUL7ZE$C7S*(DI73JJO;-/F!
MRB(?CN@>/+ZGHOMN5,-7A%*#52I=:EH,;C?^_?GB@>G!?=7')-2CTB5Y?7>:
MG28G1;9,DW<.%/"BJM/DYZS(-DW^8&R'PW3_R=-15A^LTOVQ \']\[3J0.^>
MYN6#D=N#]/#QT3V6V]'(W1+5GS/L8L/T:YI\7RXP0?YPI'7_\&"4UK^$QGV'
ME<*G6?[ %.[QX>-[+,"CBF45ZS[DTRIYD;<;,&7IAX<BG\\?AA5[.\456R76
M6O^,)=9$>#C9,*=OKVT8+H6%],=,N/L_"04__B%X>Q0,M^"+,ZA/9%7G,!48
MDG\)D?Z\TL<2M(1V)3,1Y=3RO:Y=47B8!\=D\XNJLCB!<0]8@$[S1-.6%IQ8
MR3W0&;:*-LXQ(#=!KM_OKMK#L:OVAF$T>RTDCZ_00G)T72TDS&S[!N$^'-8;
MW8].$N%+PY96@F+0$B]&35N9V< ?"#2'X.M*+/ J#/(]<TA3'XEAMQ"5TGAP
M)(^M2^ O16=@MQOGF_5\?__E0"E-3Y@TP.[B0<5^-4^#V@?A1Y0A(2,BPLB,
MZ1L'\!ND:5=[8B*V"*78['*#L^XITOMHXE(>%Z#("<K!<X2GL#&$BI67<\S<
M."Z)18A 5^.,E:F*?^]9JR:@?N<Y$5E%>*P"\S9]?PHRAXC.LN ,-9IT9<#]
MC_='H$;C;>+^/0O[;;I6>3%VT.X8+MIJ:/]NNN?LR144QO%U*8R?L1+T'8.7
MOS1H/_=!;?Q2]7AP!B884 5DC/?[5C\:;_6;O=4O5S=W\O;7Y-6KSU),+,^Z
MGF)A7R%L-ZU?GMPK7[Z<$]UWB_D%3[\\KX\$=[6O!)]>00D^WALH^XR>?8T^
M^D>>7!K'A5KZ6G3YSUG]WK7>H7GK%CD2S9;ME73Y]8SE/_[]V>'!TV]NX<T-
MM:N#P? .38P4EH'!'MX9B^-G8W&\:IH.@?VZ>GJ*Z&<$Q?BO#CU9@6W-T67_
MR-LP^/KG>_J?C;YFRHO!]((@#00<Q:;B+R?O7I[\,_FQJ"9@]8CT*-L)*)[-
M$N:3X$X>[G]S\M/K7_?HWP??W ;(Z6E&"%]:" YVWM'S?0((=+RIM'&(EE'/
MA+/O9%7GA< :[#-CGV(USBK'Y&VUFQ/T</0@0O-@ZY5)Z=8E_/HT7Q&E$7ZR
M8?9E)!RNEF!!H:%^ 5[<9X%Z^):D&F1\Y<7WAFVPETQ3PQ&4#OO^I9T.=V .
M!B6LGZP\VNPS)Q_5-IW:#%V\'"NR#Z9!Y_GA)_3G'#W[F/Z<IY?KS[G,HYY\
MS/N?7-_[GW[,^P\^6X/2U9Y\0WU*UQKKOB.M/[]6<*OSB'[IEA-7<]-/->??
MO2-=S+\+.G!V0\U =V2-3N!KV %%J_ &"81Y>*LLG\DO76W6B__YU1=?_[66
M:4N4^-_57'K*2)3X=VH+SOC'3"3L#=QK^B7](.+M%1O^^TG)$&*SY$V1E?*E
M2M[S1E@]_EJ+_G,&YEJWO.@$\[]_/<U:_NO/F:!B?^=Z.\)__PV-5/Z+1X#_
M3&L^-K]=$(([<^$P'6BB%)R_ \F7QI_ 9K*KIZ#O5O*9IG?XS>?/CH]K,J[)
MN":7'>!8\//234G5)D-ZV/_QZ.#^J^ G3Y]=PX"^RK[^:O+U0SA6!P=[3Z^C
M">7AK,BH?!^$\GT )K+0_ PJ9?W;0]#)XXD;UV1<DSNW)KL+C<?RA..+RQ.^
M!9/HSI<7G)2)^^"F'6'L2^4@,\ AF5&!5'=NEAP?'VKV<B#3EK35FN@+,/6;
MM7DSSP*M)H+_)[-.F(G*4N@1E<<Y.4-T?43WQA0L\R?#"_EE#,PG+PZC(?IV
MHBV 16VIOI(2T,QD  _Z HS:)T^Q.)&_S/6!2!I%Y8O":):T2-K5$6\ESD+*
M()%>#N.7E/J?9 4!]#>GS@E7TD!>_B\DTI.'(M*'1T_NFT@_?7QS(GU[I!//
M;)W6D[WD_WGKL*/0S?[?&RZJ?7Z%>K*GUU94ZXO/_V*E5UA!W E%+XCV29D5
MFR:GP_F#KZ]^$37IO W%V:]#C?Q]*#^^:#EB/-I9O#29+@T>_Z43+B A?PV]
M!C&)1B -@A<S+21U.(A^O!(7EE&8J%1M5P#QA"D%D#X\6R)7$K,.AL)YZL,P
M#V4&3^8#]LRZ2';VKRZ?:7>8<KQR5P(JY4K)D;"I00KX>\7[#?)$"I%RM29J
MHX:_AY2)6,^7G.6P.69./+I A24GHR%.MQ53$O5A@W=MDZS6U9:X.56N,]#H
MR RU<#1EH4VVCR,B]9C54VFJRDHYDF3!_)>L=/@KQ!6-6S.[9LF$Z%E9=L3<
MA51&6/WW Y):1^([U*QXL/_H?U0C)N^0!$I$(::;EW8\_[:=*U@C.TS"Y##7
M.LA4!QE$V Y1R+F:E5#'$ 4-9HNE$P6!X!<;JIN-NAV)7(O76@CB<8&I8Q#-
MBD=%5;T7MC;=.I)A);^J\^8]/P6K DCDN3?I!9QY9AJM'<DL+JK46?X@#_])
M'O[./UR++_&!\N&W\(;D!SX_^N?&3?WY_M2%U77%I<GLQL*SD5H7YE2V\0'F
M=ASN81)*1CT;L/2S',YV;;MUZ(@*KS%]"E9X6N<3SW^,3&QY:!<]9_%[HGB)
M4WT)MKK/5+?Y^@SQ%> #M]-I!Z8I]L ]*I4UV3&E&G)DTC86CJN*F@0[R)"#
MJ<Y=BZ%*8O(]RQO8666R)LKXJJ@6.=.$PQ:"(9\J@X)E3W I[@58TY.N=19H
M(D$F\PJ4I"?-DSXT9<V;$N]QFA";:,I;^"<_8H6=NR"(-#38>YK;JB!A 5%K
MJ+&XJA=9":O$!--MW=%P8#6(>Q<)S&NBKV+N3:2S=.64..Z"5HGX(>YS&]'Q
MV$9TP\W!\/!S"47X%*3B,K(5-@MGA=H1?W?J4?+!0;)4HE.3@V*.$YX:D.S%
M:4\1MNO*=_&?4UO]Y*\9#WS\Y7FQ7>$FN#B^0E?QD]W/.!A\QL";/VMDYI)[
ML!69>2/]P:_P!B+.3+H$OA*;Y,TKL42^3B35!1IUSIVZ!3$RSY)E5593D$\T
MT*8@Y MTF9(BF[B"6$F8C0=9E1_IC^PX=*#]E\GK[W_V']M#  GB"A'?"3V%
M>;O.N E:KR)V N2V@&_RR_28@?2\SQ9D-R[ITD/@"NHEQJMABHC"2>G@[,#A
MDP>0[;%IP/9 %M2&P2G@?Y'!6 WW\,$.NU!Q:,+NBC<6]MD^@GNK8=ID&A \
MJ\T6=.>\QW]7I6%9IF9W;.AJT(8"M3!!,T^Q-'05SUF8"VV^JH2-;[535AR;
M);@?03_!7Z13G\>EK?IZC2MM=7.)H-2H;T9]<[&^^16A:E#4?J:H*&,ZJ+;Y
ME7#2?U:5$Z785>]D">(@Q#9E[ZH,!B8;D>25D!*@3X:S3W]M,$"[U(>4#3H_
M1@6L<PP&$U-RCC&;H#PD<"R#UHLX>)99@AS3!'7@0.G@V?3GF0\ZQ8A0?YUB
M8'M:K7(.?=.X:D=3F/D6T":;L\YS<VQEHU"11B?H+7D]K;-Y:VW<,CL37GK8
MR17")!1@\V*PF>B>Z_Q,%F7F4 MT!.Q33=T,80/2Y)?7OY[\_"Y-Y@5:5N ]
MY(C!PPS4:Y=1 (.?:ZF3<?@(,]' <B[@$_RSU2](<@V*!>?!.J8JZ%-[R8E9
M*MU=5'NRJGZ2N@E&<]-"(7TUZ$&'',_EI,)UI=543;OG]RO6IN!0PZ.;-'@P
M* Y!/5XQ*O]9&B=?E\E)MX!;,SFF!LA#:L-CIF[BA,? '@H^(UY0UZ3E",,]
M\ QNCR8$ZF2<N9K/E-QR*'UBW09QZE_JL 83^@=LXIG;5+60BKN2C&.P56$C
MZ ,4=%@LD#JXY>P'+'N0W2\.GNY)20W,O2 #.>8WRYO WHUW;E:W&L8+H%/)
MQ,&*$_:)3_VTISD(P7 ?XU[RUN'U"P?Q%[P8846U0S:L8ZK!F+R4>*1)W0S&
M_,Z)WDG@!I=CC@V6>#S %<^+YMQ^T\_5B'MY#V1!C<7%QKLB&$)BZ!SKUQAG
M'!49*##LQR4@2HS38FJNB$(('.LZ>/H-+@V[_AF:4((@T[6G50WS00T%3]'
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
MX8-Z1]L@$K5WE9Z QAO+-%"Z17/4UICTB0X)>E"XYETSZ+)*EE_L3EIL;Z>
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
MG5Q8@NV9J^;OO7(KL+-E2I:L&^T[86V>)>R("+1\\'ODY5ZA2!;_*_2'OE:
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
MY0SA/Z,K;3NW\[=O5[7SVDCN,#UV_ QRP#Z $;VN2(N# LP*F \>.+3$K3+
MT99B1@2]9JZ8O>1W!Z8/F+YG: AOHL\UI_D*[U+62.(I#2@FFF^;O0=OJBH7
M3FZ:83/^*-P-_J8IHYM2+25O#+&QS]X,F&\'6_></@C'OBA!V&;ZS'G5U6A!
M]RWVIIM.P8<!UR&9%EF^Y!FBL( '5*+8-,%9;^QU8Q8%=A/]I6G7@+C3SI#6
MJT O+_'[\!X[;QC$S#53L(%Y?+]4L#]PQ__'OS\[/-S_1BV'MSP)%+>4_G3P
M#=F]*)&@=K&:B,ST>5YF)=YZ($SP"QX26;[H=8.XN/4INFJT$CG>P:NJ!BOU
M5;0RX!W6,"MRQLSR6=-B?^_9UHK#2$K'-YFX*'@KGC3H[+[IZNDI[CN>R9_R
M*=J.R0EXZ&R7T>?_ 0NW63L0FU?E="_Y2M8 =<$_?@\?EOE_/;QV!X=A\:H-
MG(%-\GH""BW[;&MWCOU[^#FLR2L9;'1>9C.2'+:%LK,*5=\F.D'!@(!9P1%F
MMY;-EU6V0@F/ RSJ%Z+]US?24/? \:!P1P*27\MSU'1K\R+_4U2GOE>B :A*
M-0R@"H@\[ZXMJNH]G3FO$L0[3T$YU&<@4O06]M&-O:H3=GK@677#V,7_B09*
M8KR$@TN"D)WE/$YPB;IBQE8<3MPL(ZR /&C;6@U##,O)"ZPCW//3N4)$X/G>
M?GSX@BF-!FIR>+CW[,N>R_ZQ88&C\Z("X1LF,( OCY7];-NME9!1L/R'PHQU
M-0$UFK1=#3<J5J89O<Y+FD\[N(&*#?^A+[D^?N/C5' 5XF;I(-1$J)T)RL6A
M)-E;?PLT= VPB).N$JF:X^?5#)"516US\/2;9GMEO5J)7S:H5M'Z=LM546T<
MGCLTL"G EWU(8'GA:(OYH?$(4!(=CJ:K\85T)OSK:>QPUO &#;$7^(.&T%25
MK/VT]/3(*/.AFT)CP'!9N'Q%4X&/UV SX-;G4WP#!JE=W69\48 '-0T#][J$
MSB?,#S:$1%/=I[!$^%/_1@#?!78"7I)*&%0GGLV6>0D^2<V1$8E9^,!P6[5P
MR-& V!]PE%%Z0,&'N;%* 5]]W9YJ$(CT:]* P4P9!K(R^Y96_YM@Q<&]T\J6
MA!4.VX2F70W.P4<%5Z[BX]#?UNQ,3*IB]K=O?\K_U>4SC0V_R%885@'[HX$-
M!^OHG 'M"IU<:W G^CM=HV#\(]$8;-K?04.X&CV!OWW[^@SO!'BNC_C<1N#G
M'R![58VYLV*3DL6AL4Q=3C0[3T'*'L$I6B:%7WQRZR?.P6')FM-DX4J4#1^1
M]Y*"T?XSN-TEU#"IT/. /S0)+0:]$^2O*L[H^).^0%U%X7ZR^^)4DTLH14#&
M4?1ANL7P6L=S#P\.EA?<T]4Z)4N DS]Q#)><"3+9=S^YKZ5PRG-X*CYTWID
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
MN>N<#UC/:1UP(2$[Y:B,O5/^R&&:RF-N1U[XF@:H=Z8T?\MU3P47LQ>*/JA
M?[/[-R3@*]B&2;O@\@LAUT$%$SIG)UCH F4U=&GU:#V>L8+6>2>BK2%LBNXY
M"P77*I^"E-L)!H<?.- )%NJH][8TZBGI,5#0V#7>Q Q\&VHI1/V/TR >F,I8
M$%*G0,R85Q*0DKE8.MMDRVL$ZC8DL>F0!%;ZC% FNF<1$.GL,JSD,S#G0&4J
MR<IP: :0A#ZT-I^>5 9<0TF;]'B5?65P3U&#5S'=BW^>,VS!0A39O54.'?E+
M/W+VN('D;F _ZG6M&X5?8-_#?']KCQN,@WRP87*?:]G=NDW"_>:-PEVWB^0;
M'VX ?9ZB3#*)09L>8[-W)C4,,G)\00-)\]Z7T\Q&'+T3RL?QZ&MY[V;QT2.F
M,*NR<$.A19N74 $J=&3+(L#8U$( $X!LZ&%'BG1@A\I!."KJL8%4]%S9GV>B
M9IEKG>N>F$'1F2D,]]#6AC!=/K%$-[EO&\EX:!&ZX[U9:I>]$8)KYLA'DE4U
M[\B:1:+45)<E(Z/9;.4T?X]]*X.@H0G.!D+/%&.4/Y]MTRU]9I@BE\MD#<''
M)MPHU/!<.?Y4JCB9BCCRZ#[H.@]QS&\V%&DXF4?I3"[*XRK"8;J[C)S[EV*#
M_F+BS#2 ,^^"_;4A-:O6'*/V:B.1KB(JU<UZ=-KO3(4,7> 4[,.Q:=&"_DTS
MR](T 4SG;LCE>2A=".B*P,IJFD<"UB2)^H'$,#*7GSR5-%'&PWDLNB:HYPUH
M+ .6A'OI9P7P*5\/F\M3VBH^YPLZ]?@O5&4"MV09)O)"%W=QC>Z +,L]U*_E
MD#CY@?$*A@E!J?RR#8_G_WM()0XB31I*0V1VA?9!D_^5?P3=3U-.&*%_X%#[
MJ #++H.>ZB(+<CS5M>K,@2$)/<B4HEW&H6%*$NGWR"<\J\/2+YL_->\Y'08H
MR7.]4 >9#F6Z9A2/(GLW3!JG4HN7KHA2RHQSZ>W"I&@Y>PM=D.DP 2IWJ04
M=&XBASJ<.@<N\)H^!$-DQ[7"6C"]"[("G0X!W-3DR#?=SKC/<I==YS%^AJHF
MUU'-7PM_B!(*<KU%,9 8Y=3%#+@[IM8+^;ZX4GI#(X"/ZB1-ASU1:0(2#Y(G
MV0,->3!]IBG+\ACNF[B5P3ZSY)2OR%L 7=G Z=&F0"N0T34_D*YT@9^E1*QK
M]Q! NKN?=1)YAI/(K(T3_1Y$-7#1H8/PHQI$K!.9:>J.CDS))OA8H)04)Y5Z
M>O^$6Q1B-Z+3&HXDAD1VG:^02<D]<$ZR-J%Y-WD:LINR4?8K7:>JI %T-L,>
M:N#NI0N3F"^("I<UT9)C/@0]3O,?U 8P>> 'SM=7$>ZAFBY74+1\6CH"5R&.
M!%EMV.@->VFCB!3"#YIN_"$Y3@2*V9,7#F4'$./&H! 4Y>E\$HS4"(HMVB.^
M"!9A>SP*F8%X&W=7*H^%8:ZJ19:*\ 2]V0H]\Z%C\D)2 32>EG HW>8W;F0E
MF0K9PFYZKIY1G#"!TOAJL9OU(-?N"Y-<$&X*IRE%[34QX$GX,4IJ8\110L.V
M83:)!VKF+_[5(V12XG8:LA%BQG304C<\2PE*>X!17,24^DJ#_OI$$D9J0]%Q
MCHQW4$(>U!1Y!G6[%_$H'2(W'RA1*&RO.@=7M%*2M"^%1Y$VT.]!N\M_:+#*
M1B<(F#5I$]E#BA"S-&H<4>KL.IA2*"7-3)+S\]JW8UJ0IF""G6#9S\ (:KR<
M.?@O+^$-#=F!_!DOX3QX8J!'9Z_=.1%M!@XKAR/C\Y!NI'M>6#<G,BWA0!JL
MU,B5W\G!>RBY,%I;JP8894?DJ0E_HJ<@/AO5GAPDHF*_*54=BHHFU1??\"BH
M.+JJG]M,X5LQ-0OEI<91J\,5C3;HU<T-52Q@#&^0Y<V*]EUJ4XK%J:J86/.)
M.I+Q34_YE]*1*VHVM2B2N[_-08:&#3(L(<@PYP1:&7;/-$W!UMFJVEF;U"HX
M*1.?7*-_-7P./0T&6G;IPL8",:"G2(C;C[14 1BG"JZ!]&F8!WBI?::[_>;O
M\63< I,2O1#FEJ8T2 T=3.0[ )NY'TY9DXSC]H=)/Z9N.UQU8R!%P.$I"\+^
M8G)-4@9@.UL0D]Y4(=EC@P-3QYAB2$D-2/!.H*^NB4.T$5]\-F.>G(TO99-8
M^^AO$5-QP@!')=$.P=Z(:96I*\".R#_#5##3:"@6JB[U9)0OPN4F.H3TVQH_
MD_*NJXO,#+= UATPEU6W$=0U"A5@3V?R R90/ ?.3VDML(BOCC%TO>Y=WIQ]
MQ)8_"-4C!KX7#PH"C(;>&6>5G/2.JAV;1S!Y2EAA[^_C-_Q-N&+C7(5N=C60
MU >/>R+L*IQ-T#,3K2FM,Q;9N^:]S?OEK%;^"EF*E!(+23?4:<1D#",QZT),
M3%]$BTUXG)^9TL,,.! 5J>R335FEX-$ON*D4!,H3K1;MD()1QRAZ8M(0U/5[
MY.\36; J,1SL/8(4+*2GCH8J=16FO$)=O22'.X924GB]11+:T*P'$;_4+E1(
MUD2<<E ,?-&!#X=P!XX\3(*$)^:.M;"F]F$8^/I,18J= K(D!(SNQ-QR@;D?
M7E=VO\*@Q*@U W("+3<9O-!$H7R;B@A %&O2(+?:YVPG-[+YU1YEWS-(=='_
M$S-Z7HJB8=SV1^PF@V81-M8'T2]%-O8_0G,5F%MA4T,+=PON&*3&?'B^0)]$
M=?_Q-45XB3LE0F39VV5:8CXKFUX-&3.:( U3YI@/Q79&*+\#X;XAK"IOOGZ&
MF&;&M8$N%(>?QL.[ <Q)%Y89VITH6=L%52,B8F[FOZ.^TN4+RJ[7#"=#'<JE
M "G9JE6&2/4^H,V'&(O(2H2(43 0#B5N&L2I:/0BDC9AF*(CNS%C2"#-Y'1B
M=:H7BJB+:!,(/:\@ %;P;IC5C_U<F"_[S%/3?Q&2\^56R7J:C>A.:6 )U(4U
M(9(^E;VJST/X(_A?8"B()\]>N/ +MD&VQ]//B6E$AAPL 2$X$'N Q80ST[CM
MJ/.M<! &9=;#M+\!]MC!7L^&TS:S) ][>^F"&YD-6P1T,.4>NXT-#64I]&*
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
M? H=0K;!B76;5VV%1KB>PBS$#HRS@$&.(L3="P8Z;U=T0>-_4"45ANM31JC
M9-'A:\0D^KBJS3WOXU[UX]IIJC8'31TOBZ9.M(\/*.DT2)7O+<WTF?;$.%7#
M:PX_T#2I?:I;07R7'#FN_8CK\QQQ>VEG3'T'259<Z]8::SJFE0*],QWHX[QN
MT.#4EUZ[O]Z(RD&AKZP)\$U E0[[T A7C1A1GG4:<P4M5(S.]]=JX/'9"^L.
MT8UV=7\?=(7-K;_7;"J^)]Q"W6[YSR*19!*+*2=B$[OF)AI-672QH3$Y78VN
M47-XEC6OS!P7=S.$)*[I/Z][^UR2LX_R'C/-SZ@V_>RO],ETH%LN&97*\=^F
M.$GUN-Z@@18"[.[!#T0MDWFQ+FBZE>!77#5]S]4$.2,Q@0OM36U'9@]ZS*.&
M1'KAY#HP2$:T X=TZE>=HN8SG8)I3DK)UN0* $!UBV*KB,+T+0,SLUQ7'<!H
M9)J)A$@A'?<*AE?95?VY?*BFZ4%WSO^J,B2RW%U94H16#/2.DSV#1)M!IN(D
MR5 VCX17PJ%5O6%(Q48B+ZMS=G)@RJYQ;"=L0WHX1"VQ":?HE#CN1V7:8M,[
M3SU)>KUA%&1*T\735)J$V7]$)RD'U#E5B#>FQ!^]O/S<Z"E)8F]D\ PF1T*#
M$#Q%2%/@QY?F<F#4]F@VS91WJ8PMF7P9O8YE8R>*Q>@YF!Y#N4;JB)!SJ#^,
M[V)*BZBKH/09L]=5*D:<4= #$F1$MDX !>[_)K&>B@HCM5+9?1#:S6+2"%#5
M()L]9;0FH_-(!_NB4PJYB&%W'H,^]H&74^7&O"YTKS1SCYE2U^Y,&BQ[S8@6
M(X\TE5=@R:UL(#:##D.?%V2C*B4X?M*H+'01FDZ5RCTS[Z\(._E)9S):R1'U
M487'4NJ>.=)')61EAPEM]Y3O(QM26D)(::5(N:")P @T.Y?4>V)2KV:[&T6]
MI8#1U(JU#XDN<F2::E\G#539D1/_[G-!#D)_=B[=@][JD,*.:"UX _:Z7PA[
MW4_!7A\IQC?["P591"#U2Z%J&<D"#8P\VFS/9OT Z<C,3>K"RCKL*C@F;6VD
M'*-@6&'A5,/U!]>^9M6!2L[4< R+?&<]$ED6T<=\"6J$SP90N=$+4KU'T- J
MC5VSUYN<<,,R5G#6JH.T&'.VZ,B81-']'0?E"E5)[74P"LK7*[G&T()F38A1
MV"SB17K8(C;Q"O!,L2,(Y*H'<8*YX>L^M>^9^FUHALMDX8>Y>X5V,6;NSWR@
M9!Z/B02?0_;U7\14F<)QUQ1M%/U^U*G0T"L:)!R4%1,.SPOK??C@ ;$CI$OU
M&!3E.7NU2K7^49:QI4-M=9S@4.H!'50'I&B,T8VKY,&+1*V0LO-O80H$U\'T
M*YJ!*MMUG%QUKK*F;=KE*#:;B:R4CE'N/&FW9T!P?N!369XHN%=1"N.0T@FG
M-'#:*;^&(_DN)*')TAD(H>A>(@H<MH</0QG]:,C*E:M\V(@B>C(:/9X.U*)_
MJ(UF%4"D-K,TA84SSS)GI,R2A2"?F3H_5&LCL=Z1AXIFY^Q%=L0)5%(I5HI)
MUQ2W7B$@<7^OCECUVQ/64.[,L86>:.LE]UEUEQ"=O6+AUM>3+MY&4C.0DW)*
MX%AR<+B) JA9-6ND3P&-,M6&2T0/#5,HQ_BD+T>MV=@PA298M=F2_0E4Y\YI
MHSR+T06:"U3 M$ N<;D"H@ V0DB&F424&C6Y;H70'C7D:-PL8+PN='-^%9/%
M=:L?:E-,WXIQY[/OIVC.(LLEY71; WN1/2V&8^!AZC6:8$#2^4G.64(!49J&
M1G.#"]&6V559H XX58D[1*6E=(E@8)AJS83$56WN-6$HKB)0R;$&M*RA.L%7
M680#.VRV8YMM3EG,F2%BJGVTF7"4<V_D/ '(9Z-G+!MIBC:KD"0_46-O$*A
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
M/UCK8=7%:9W$42I"I7_$X?U"1M+_\7K]+_)L7>?ZX,0>\,@!\PU?YP'7J_*
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
MZ]I];XX5HRG991QUUYN45',K#=MKP>+B+6(QNT6ED$)+'1Q?;3:L$"H;LK8
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
M+N4:VYQO>P[V'#;NMUFVH"P8!;DL)+-&)#HCB)EUFM:8/7S+6,N/L\ZG''_
M;SFJ)9_4JCI5NJW9\KY69B*4B1T6AX$SLD-SIK2%53.#18X[KBDM8K'G8,]A
MX\@1!#)_M[S[%]^K5FFX3JU^Q/_5;'[\LCW%-**,Y@YSB611S:WW,D<W%340
M?,:MF<-#[ C_B;.41Z[E8?.#1UW+)D?I!M&0PP!1[!9'(M.+KL.S.7L9)!YG
MLB#RDM?S >NE'!P!"$IB;+@MLZ'7[+*NNXWJW+EA*S_C[:$=2ZCKFK+*#=FY
M4XXMH5I"7?>\JYI;;<T=!ES%&1=@K@S<<A!OS8-'\E!F<?3E[?$%XZK%ORI;
MB, X%<+(QJ<@Y2>\).Q5O#$KQU^3'KNV!RXJ-?@Y"+?25Q:Q]4^2;#76Q.]S
MGM+V4<#ND=RJBDXK<U<O6I(KQP-73G(KPC5'QZ4AN3>ZS\N%_E=U]S+X '?P
M54I!,[N]Q3OT*I9:++6LE%IL8&5Y9OTE&\S;%W,+ BD_E-3CQW=[8XTX:^[A
MX=R)P=:9O"M4M;*YCHU:*3R_EJHV056K*F%P:T>E"'RMU.K>E)]IE4]X&[2L
M<VCIQ\.[D*T?)F_!^Y2*BM[!?N_:^Y3DC"W];.G[+,]U;8/R2[;>G6N6."=Q
MK\=Q7.?12YAH6O#52X/N+L;I5P.;EQ.\.O.2*(@>4GXF>!9X"(N:^W_V6?(G
MWL8$TS6%I2M3L'3EH#YW8P\;-]UUJIOF#G@[U1W9!!%+=7.Z"]Y.==6YV[C:
M@/W6!NPW"==+_BZEH)H=W^-=>A=++Y9>;-A^APS_TR <#IAOH_JKCY3E(;#8
M^MTW^$N@'RR=C:6S-9CX:S*V+)V5F<YVQZBWN0"[&[O:M?<I%16]@_W>M?<I
MR1E;^MG2][&Y "5S"?R!'S#?:?,W]AZ8<SGLW;$$9JB8[H'4N1H.TH$7^1SB
M[7J20.G+7.6AB3.C([NZIY,R#FKQ#((4;[5P YIZ9>Z.\#:,6XX';H@:)[H=
MWDB--4N-EAKGHL:)SHDW4F.ULJ8:A85@E8VM+ BDT-T5/#'G[/Z>=0<F@!K$
MW;\<F-3UQ$DDFF,LW19$5TK=*JU0%@B_Y(A :/O_'J:#A6?DO4DJ'*Y)0>VH
M2_P]$>'J@%*U7K-4N!T/VS@5K@X@'9:""&W49JU>Q@WV.2G_ZY2*AG9_NW?L
M=4IRPI9ZMO)U;+RF9&Z&-\1KEIO;:2,V2_!*C@/@&XG9M$KCE[1>\BVAQU5&
M;>IU6PIJZ7$^>EQIW.:P- 7Q!KQ:-G%F88>&+(1A"'F94$E_"=^-#G,T >8J
MF&DUZRW#JE>4MY5[SNA*WG*^*T.6[VW#++]NT7IWB?#LAEE.W=WU[A+AV0W;
M7DXE ,__[?&]&;O)U=KH)N=6,^I4S*=F&:98E\&<OP\_=QAS+N,!OVP0.X-'
MYIS$$;J,/7 L?@LB+^H&7NAT!OP#B *G!X[<UN*5PBI&UNF8"SV"K+"LMWG\
MK5;PSM_V#]4[%/XG0SOZH\PR1R@(C3UUX(XZ\;$G"C[AW,O!1T;6'0TK_NR%
MS]YK^D$MZ5$YTNG)?SO&_WT15,HY[<MSX \>^>Y4?OSP*;L"@WH/CNK\@7I)
MSF>G>G#8TI_1LO3'^-MGP0MW<>@#\7O.8P)V]=\&<??#S[= Q>2!YIN-"6Y>
M?B\+-EO^:^[=-7]4<-3FU[0G1P?-($,5X+3_DG'@>\-!+#])Z&7AH^S=9A*
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
M"FDZ=JMM;" 39CD$4\>9AH,!IIMES1QCV]2(3XTC^! 05R-V.@I\[#T;7\_
MOTV&+-JG*=*R.Q>FUM_PY"$=9E<\N;6"?OOB$.T04Q%C+!0]&.,%?6_L^+);
M6FP!5QIKI2[<7".!_BMSO<D(J>I[F,R>Q[ZM8O[#=/8:#:MB"#D\AMR2S7/1
M,>QHV/&0#K,;=MR2N=.VKSJ7Q\"0)NQR^$:-,F4&/*M,!C:MZS!.3&99A?FU
MXO(ZK4Y$NI)D152U8WNF?8#3RHSV5#&$[)L;32S4Q$*/ !]UO-:V%74Y#B>=
M";D<KW7RV7L&] 9N;-TYGFN,D>KR[;ZEME%_C/IS!/@PC%13Q!E&.N3#O,V.
MD$K.=3@:A0$-U]MU+?W5Q7&:$II-,'Y=H/GG6!:5_Y3*5N?WO!JX8 6^0!9H
M6?7_M43]A\]Z8>0"V.@A.*05AS[82M%3[WW#MO!_'V89!"M)M,KL;P,HJ<]A
MJ[X_@XP*[4\'J GMKN$\Z=3*>:*F_-Y%(6H8KO4>Y_U^L'I3ZZL7. $N8W7A
MMG_V$H^96&^%=9E]*[/S=5F@-"0T26>?IDAG-X$BLI3&=IW)>FE?=(YAFGM=
MF=2PYRYLS;?SY_J)K<N-U.G8G8XIZC.,>DB'V0NC;GOV5<=NGAUIV-GXB@[:
M(C;N"8,,@XP=^HJ.- .G62LGTI?!@/5I"N#7,(+]!M:7U_[0"9Z8=>\DS+JF
MGZD2FGQ-3N#R'[[\9^(]@VX1F"*"*BL^^U:(Y^O#G/IN!Y+FD.1N Z0O_'^-
MQ.Y9G$1>/V$N_J$;N-D/M"=W[8%JGAV>MFRLVCKA8^]6[0ZY>-M^JE;C +W)
MQDM5,808?M[9*/>627PRSJS#,]F-_\0@PR##)#X=I<\*$Y]N@CY@-&;6^\^,
M__3!\HR/JI;Z3,75X3<IOG<L\D)74JND5?C=G[@ '%W%YFKWYOU7RVG*3;O=
M/HK ;UU9WC#[\3#[MMU<YW;SO&V8W3#[ 1UF]>A3-7A]2R5_%W;SZ@#O<],^
MQ!B"ZJTSK3W;^L3@4 $6P(0#ZW^9$QD#L$9,?3C71$[J=^/;8!L=I#MVZQ"'
MYAA]KD[X.%A&W>PHG;-#[%=J.+5.^#A83FULL&>*W3H[!D8UN0-'%B$UX6J#
M#(,,DSM@7$99E]$7^-0XBRJOP/S]Z)3:38[*L*_.C)^HNIQJ>+2F/&I\N89'
MZX6/X^-1X\8UWJ&5;<PVV)AN..GYK*)&\$8V6!N7A$&'0<=>T6'RC8[7>?0P
M&8]]AFW]'=^Z";B& /?^3T?E+ZJ1]F+V7<%]5Y#@CP7T9M^&U(\$]&;?54^Q
M/VS-MEZ#./D<"0=0^'D28=9\,F06+W%!1YA1<"O*FF;?%=QW!0G^6$!O]FU(
M_4A ;_9==07W2'VZ%[72?&\">)S%R5%IN#6+2E<V54$2#UI.W]D6>O?,+_&_
M:AY!!D)=.=#P7B5X;_U6.O,3:<]:AO<,[QG>F\=[6VIM<WYQ@$V=*^1U-];$
M&ZR)?CABUJ/SRF+;PD:EX< "F@<3T+0@K3#W55C2(D$1/>W'R&@WC9%1728T
M[%<5]MN2G=&RS\R$*<. A@$7,N"6C(VSHZB738V-)4(3A; &I=:W&F>VU6I?
MPC^=SH=J&1'U2L;Y'@8GE)#S&#E!S&DN?E,*SI(86ZFZ:KW%S;)FV1TONUG9
MO([TFRO!A20JK63*ESOM5NM8YZ@'?+1M8K'H[,OX^2QR]*UY9Y**L$S*P0R8
M=#H$CBK>Z_4J'[MG?=^)8V_0IZHQ= W>!,\ NC#RX'U):-U%X1@P,[6M.]\)
M$FI4A,7M8ZPYVY7_<!TZ. @O8T4.OB-;;+G3+F^Q.7Z8_)0C\=N!1N"/H21O
M(NYNX"K2WK5/\^QRYS9=18AK^XZ76AST('%;?<&Q;91?MIJMCT=[<1C>/ES<
M&MXVO'U,'MO:67;A4P#?M[P@<8(G#_O-@![,N D7A5/'3Z;6V)DZU(F&^4["
M7+3X_AD&;/K"?-_JTN-WDZ@_Q+FV^+UO7I\%\'/W*6*L"B;@*NZ193PA)9Q1
M#>F^DX-F_&9S*:[DZW.NB(,"G';56/RN60C+C.CBX'L[=.<;O<C]TN"5 H 8
M&GL5<NZ_X\Q_SWG_,:0_2W:'QP2S*U[?L4W<*9W^2Z34BWX\-*I:7>X8L5H7
M/-9:K IR.@-R&CNN*S:=6&?P_PW^_TM"=U4E?7EIG!6M"S!0"I\-H$48!$9$
M&1%5/SP:$75\(NKPJ;K<1P'_H-X[JXUKLU5\9R-[LF;Z^XP:%XV.0(D&O+W[
M^8$QZWN8\+@J=C.Z#@.:%426]U<O<(*^Y_C60P(?H+X=GUIBZ^4;S0 B QP-
M@)=%0)2O5N(%V<2IOYY<665. KF3D@^T_16(AXA3$;95ZF71<8E.F]RA\".M
M<*G'P IA/SG^BS.-W\F-#%7:@^B3<$7_]U$06!N@S*5.L]'XX=V/L\CW]!(3
M_=(-64":I^<7Z6=\4^G']-T70<6]T'?Q;(XUC-"@^EL2]M_]_$@>FW" ]),@
MF?SC1Z<,N/2O]8_-P;4$NQFA1?"X/.UX&4) [YD\+?>D.9,DE)]$_*3XT;R^
MRC,<=/F<DA4<@KH5ST]3)H0$)@@1!6G:?7B\O_U^^^^N;=U\OSZU\I1L>2XL
MXP5GS0[\[X^+=V5G.Z_FV;[?/GYYL!YOK>O;[P^WWVX^=Q^_?+:^WGSO?K^^
MZ7ZS'A[A@U^_?']\*!Z[/AC\EQ-,G&C*I6.["9=1H]6F?ULV^3LQ<SM[0.Z0
M^#X9L<CKYU+#/SFQ%]\.[B(68T=F]%AT _<!=N@-X/(,DFZ_#SR7P/5]!X*_
MCRD(<(A/?MC_:TGG"HO[SAAY,9HP_A4OF#"WF_R?=[C4 _,9>4K^N.A<7#1;
M%Y?ON @H0TK91?=6K*Q,9W A6DVAESQ,1K";*<HV#6A6"C5+@LW*RK@ED)(#
M_93_^R;PSX1L"4\3%'5%$)75%:[6,@4)?T[S_%:-$,Q8STN I?K%QPF,B!F=
MNC,IX-8CZ#0.@'DT=H(I8FN@=)I8Z33$5IFG M*)ALXSLWJ,!=8X8F,G I6H
M-[4FL36>1/$$R4!H3='$9WR5B#U-?-H';0S_^-OIPZGUP/J3R$L\\=B7U_[0
M"9Y0WQJ-O#A&7^E[I+A6X^/#EVOZJ?GQ ]]8Q/#]>$#8@!<@5:"3TDNF8&4D
M0_Z")Q:PR/']*1Z$C?%1)Z71<>3!H<>X2_D:^M8OW>Z=?-FI=3N) #[H"K6F
MS(DL!F\' .<DTJGU6P +P?G@=-&+%S,.2A?$D\^_R0^)2F0,$!FP" $59E>7
M=Y,E':J"5>:+LU0_!9!MDU]F:MQU9IB[E RXKI;"\J>,^$*VZ>NF0"G;P&+^
MQ&5$Y8+8:.%NG$3A]_#9 24DZ)\2,7CPIWC2BSW7<S#/[=3J K&,8*T(5_7P
MKA0,F*Z%7TRT\@[B!>9[(]A-R@SI(=:C*8!*&/$VKBHSS^.I>5WWSTF<X&D_
M ]E$WA@_-'2VB,[R8,P2US78[0Z@SAEQ+'LH7P$%)!;HVKWX&)=37"J1(_4*
M'B(60E%*9)"V$7PCN^18NR;6(Y7?8G8[^!(G'A)N?HR6(83"XP O% @*8D4I
MPV]6E>H]0\Z4WWEX>P$A_&?B 6(!= %8T/@-)(*1\Q>("OE>?I'&\60TYH(D
M&3J)Y0P&H)DBO< V5U$,)C'^[*6S3?AZ'MYV3AP&8 V#%'MV/)_L8M@.* T.
MO@D>@2TQ4 BP X;0$$9@[%NQIEVF^^9)$+A"Q)X9J-5(^#*.^I%+7M\/7V#K
M\#3LA^;X)(.)KZ3H1]@H3R^>6L^./W'X5SW>A"/!HM&/Z1]P3WX8/)WXWC-S
M>7I&;!<R-CAHGL+0??%\H*-X"*+YI.?$\!T$%P.9S=^#S[TX$4AQP!TR8/2,
MTO]7A2W%GAJV !Y\+0(M( <N /[*OA?U)R- $1TXA3%!EQ%P<PN-')?9%D >
M$ZQ1^V"O8V!M!@O85N3%?_$CQW!*H419 .(@' 'WPW]=3UP]=!>!2A1S,VQ4
M/ !")HXYY0C4CJ.P1_L;3)();":<)/T4\S'N#AF0((R7*=(5*DJXQWXB%$GM
M;,O[Q(O,B,JI$^$KA.C#10'5(1$SD#CPPB *1_3Y&UV_)<W3;_]]\_FD>27>
M#0SE,@#Q*:DAP,, -7\*H.TG$\  $,K$!S ""?N@27H#5"+%YL)80_&::B0?
MD)@;BVCTR17%^\PYX3_-<L#L89.9*^>?8/>#;/8]V*M+@I&K=S&_5AR0?Y$'
M*')(-T63C4S_4F*BM)8<"?TJOL35R965QI^O&GDZ!C-J"N(DLLCF0H&&*J_G
MLH@K/CWX *'/TDV ;IV\25 (BX^#+.N)DBZHEFW]?4ZV#X+EG\QW;X*O<+G!
MU?;)"?X2_HZWC?'NJ&2=\T4%+*?%[H/\,,!,/FX8S[*54RSL;;+**8I]W#*G
ML%%8XFT!%S9*T!<']&38-*I- [YMN$R#OY1"L)[(E#5*6_52':24U*J[LLXI
MO:X1&9N[4>1U#UH=W'D@?%#9<>'BYMKH,V@H3R@$X@2E0L 25#I][[^D9J >
MQ]-BI7$N36S; D4)OB!TEPFJ5'R*20A+#IGCKFL]SRA7,W2RLG=F3EWK3S-C
M&JON2KZ&KV1;8_4R)E^6HT:B-7[]]$'YGO"\;)>![08&$[>F/VN_H2$$BN\S
M7%)*@X^3R$&?^PGN I5[]-P^HV=PF&IS+MA)#&T7-#Z4#BT,CO<^D?4(5^;F
MF4P=6(L\?Z,W??,&;"G*_.,;O/U&>_FO;-1CT23&M\Q\R:?IXW3,NJ]>_,>O
M7N"-)B/^M3A*[M'_BW_)R/^3F/5_<B<1^BW>_=PL:@-PX]?DO,[KRN=M%<]+
M[N2/5F_B^6BY<#O,!RN;#4-_C^3P26P(<Y+E;HZ)/#9^_C7(Y:PSBUQ&3G\(
M<B::9N7:3BGD5[D'?9%=D$5[?U2QF3.O00HEK) &HMYR6Z(S:P+?$*J1=D7"
MPG$X2%[@KMPI75V+':D%,)XO-G+@Y+71HV^0RCZLISK?<Y>N5AFS 9UY<0+&
MU=F1*=8"SI8&Z*PZ_;MRJ_^7*4<[1JC 8HY<=#5S]Y"6]?$@C++8N@Y=%>A2
MT?7N0QK$/V^<6^)CN1/R9&*N7$2.;5K\>A(#M($6]47PRRI +W[@UC\/T5)N
M@ CJ4N@5WXM_QI=Z,0\<Y$_V,J24AG#DH8L=G?CD8$+7O-<7MBB%70<L$EZF
MOMH<@D7&[GC8(V(#)+"8!]Z$<RH;%N'N;.6P@BTQ"B]@P(([= N[.,V>Q64#
M0";LS1K -P'A;(Q'Z*-54GI(GHTA8D-_3MPG);73\ #"W>/V24EX1:ZO^^8]
M9 !O0+&@?A9_"D1VYBD01"1/D(C"GN\]":>^>*]<Q(83 @^,0"##E[1MRCFC
M N* 8PR1/SM@TZ/!GX-WJ.Q^L;X6/D=*Z7/ 8,RHGZY=? @68G"7 S8H.L=F
M'$- F<,>5\N0&)EV (AD:F$T*!Z@HX.6+5\ME:*[%$[(2,\.6+@CY\]0.GPQ
M!J,$02P"0Y0((0,DL<,Y#J0-P+&?(+6XDSZZU^[3+XY -YY$%$C+83&+N!<F
M>$00,[('HI#)1"'DE'B"H!.OL0'&'ORN=D>Y/TF&J";TH3#D";$B>$612L$Q
M+D?6"Q-(@E5F8;LW3>6"XH#0)P]YFO8&>T8*G(E&1$D!B9:.M4N<P*#GA\];
M:BL)XLU&YD:71RI<[X7?LVF9XBX67A%WYGT\Y]+NCL<L<-6C?S3?+;_RQ>72
M*U]<RI7563><OEZ HWZ$)<Y4W.X*9VOESK9R+OVF=]]:9??M[.ZMHOZSC\S^
M$M;( ,4J@=-.4_=70PKQU@J,V%KY#83)%=!^-K/\8 -R[]W/CKQ+\,YQE/YR
M2DFS4LZ+JXK$?'K/A/W^)*+$A#  W2#TX$Y#A0->85N3,4 B'G*+RQ:J@)?X
M0B?3,BY :,1QFK(EWW_/DDDD4B[DIU8?;E%,(D3EU L&$4\94!FR>)U%+K]H
M'?@-SR4T(G&/GUH/#F8^4L8+?4\$2US\&O\4A('/%54XL\@A\T7*D50'A"Y
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
MLC^)9D:.J-(:I-/M3W<S,?\YK\WV0+@HZ8&0#: M[A#PEL2 S.M+<CO6:;6
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
M4X7-I6!0C4- W8CC="BX"K#$CL_22*W8*IS?&6/C!ZJ7'F-T%MN*X!1[^:@
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
MZ$F.R@6I,D)1\,3"I\@9@ZHD&]\)#OT3A(GLGY=,QRQ>ILM7CG-FZCF?T^T
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
M3\&ZB-,,J?!7GEJ/\&'/\9T 2,OCAXEP%R@2X94N&S B5W$N&W.8AQ;1,!P
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
MT;?P#&O67?-.='K?.]PS\6!%VCQ(.6(]X@XY R1_F'GV"D[7FU]'B0.#WSM
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
M' KTO2:%'G*STX()!WG9:F\S6]V1C3=A>2J.M&L<Z7<-#K"N&;R\\=Y;+HU
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
MCZ]>FD$96X"RSCMB-)7(<F095<'1(:E'MI9Q',406>B,#7:H#=FC[".VYPX
MY<VOF8+XG66W?($W%0'[#-$+S-CBJAD3D9IHE3\5/A6N;_[1OF^33]C=WG9X
ME#;45@FN#VY&@?T>Q\]YH)R)U7*?Q@NH_K CU-#8&VS-?&)+*F*G?=0<W;D'
M[4Z;W9C_!T_$=Z.,SQR5%/?+?@5=T3*OD<X>F=$VQ\P$?  +D4?-L>C3F<WV
M.]A&S]XSO\:QW3O<0'D1BZ5GTZAU-PB,N[/>UHELHZ1I]Q95YL; EL=&)(1M
MKSU,@^VCANY%BX]-BTVG,L!4L]&H8Y,T6FB"O'L,(OQSPYNZ'NM- V<1(836
M-5-S?>66G:P%L##*1Y $^0',"T=!_X;+YIXY$]HQ'K4Z\?R%+^$+K,#Y[(='
M[U^U)3YC(Y8/C<M.*BY;+'"[GC+$\M7&%PY9>H_ XPS,*C%!MDW91#HT]VUF
M\L*]>JK143M>]CE_A\8,MJQ/PPQ+CWEYOSW=,@3CM3 @<6\,I%\L.R!3_#(?
M-'>#2(S$?%7_;1GRD'4YB.\TS->)D$Z^W<DKRSH%95G)<)%6#G7WDT-M<AU/
M2_*=:5R_FU/*G6G!#"Q&HZ^4>7.BCE[FM[4BZ76MK*M B<1Z=)>/:*34=_^#
MW+"U5Y,L+3LZ+#3;R[B/^ICF@;\*EO6%TEMJH]T!@&K^R>DF$U?>,JS6#2-I
M3U&GW4^#4?Y3A"Y1;C+E](2F^*_!G(.'6[8?!V$QW)BG&XG= HD!ECA="M<V
M"X0$#DZ</0LVW2*,U+/?_5?P4;3<*XZ')!P,#KHHV7*S[C@>!GW8G7BHV7W3
M?&^.W:P%G!C0]<@C_>]F6Q< ]&5KECT#@]3&^,&4ZDLWB-K7&K3GJ9(.$3.(
M\X2$,.;QB!?XZ4<QU H*X]X%Y)!@0;,(6Y!?GT5.;?+-6DL9#-WJC$?JP3H3
M:S@(\#  A!$JMLL5WZ%/VF$4;*[C'&<= \O(JJ+.GS+&;<-)/PM>(5Q74^L%
MAT>[>4XQ/_/A(HO<&YTDB=H?8XN;S46XC$N8^&6LRS:9+@!#E"TAO(?'_=)O
MTQP'CYJ59&)HPR#T:X:WH8-888< 5XW_A;/AZ#.=B7=A=!'1KQ7/BVY.,37
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
M".)B(,YZQOM1;7Q=4#,T);!-'H 'SR@HMY[-=%OQ/)TIN*!P/N+O[\-!)#X
ML!T;/ME8"=W57.%)@05@!B?17%?#CEZ^UX<OUO=!9"Z=/?8Q#.&F3QT(Q%!*
MV]R#<XRZV][6$E:(32*1P)-B3[G7A'5#2QEU%'8G/2:_1=CFT=][KEDRM1G3
MT1!3N,96I#^NY;EHQS'7K^B@'"^XK6NMK7HA@XPO.EP&6P5[.'!FVY 9OP6D
M@_XXWA!:B@.8+WJ57K^B7)*I1YN_T!!]ON$,.7X38+\MDL83<B)!L"!U)N(/
MIXX_D IA%8K@E':/9*HMN;QF_JB(0A*XA":][OC"$<]E23Z1$8! SXBTV=J
MJ_CHJOB"?5UF2_;"1E]Y&M</.7Z\-[7EN#?S>Z""&$EEU/^52U7=K8W#,2(D
M6JT+QV!K/ZB 5H*Q$#A2OVOV7Q05W7QG,N5&<3YK!UNG/=D.-H>OEU'ZL[_B
M/8%W1QVJV=,% .$38,.PEKC)?'26?N_A0-C?#D);+)G!<!8NFOV]%R!_HR:U
M-0-@<2G&MMJB9S<__#EG?6Y^BIQ ?>*+YAPXMNQPQ)Q-YV@[[#5CCL6/L[OS
M]E@&\>^(7I&HV^/?MQ()LALQO4W/#@.3U0KC.)Q3,F/3G7<Y$O5!H_J79=+5
M*S"4.VNE&>[JYA&L1/:0_4:#-R 3OR<R\<7.2;CUPZ7@7YNA\=*=M$"U<&WK
MF_6BM;!<O;TVP\PD3&$DMQ[0.LY9P9/W59\BBX@,;6$^B@#1\=B5>"X^;?JW
MAR-3,=T??9+8QJ*%+ILE=3V\\-6RC=G9JS[#]%;^#CX'S9L#I6+@*GA'H#J9
M&@X6/^,T3^8&(@5/QE]LLBBL0S3=?H7WZ_;4UN9P%<(&HY% L, 3V.K]U ?=
MQ.QG'''.ALT('A*N 9F(2*,0:YP%;^(6Q-*'%7S-9@3X5@EY DZBP97P!_(N
MS#NU!6E$.L)O3#OEMPF"$N.M0[+:,):X._D> (_AU$<I2 "!T "?4>;_L%K2
MF_FE#0OG\P)+UN*&*2.'8_RH)6;[^$D^P@IG^C%P;L/@G=69"U CY4?G,QE=
M9+CX+7,[)O-Y!>1#-E8R%B*@/7/H],/,L^$,S1P<F@W: YN@G1Y#$I[2-KF+
M$R!/+G_4D*RM, V0:<]../79097?/P<^^<-9UOBL:'3> KYL4"3M%]B6DW)D
M++1;Q)'Q3P$.-7!P),(J7$(@CZ,^W15;)B,).-PXE$'4UXCG8B\T]I-8@%]K
M-&OQU2$8^6X<H *#GLW ZG(9MX%'\AHZ\=TR2#UENXA!)#75N<Q1F6E.S928
M[H$B#XEP24J0"OW1.=A>*!E]JYS;MZZ@,#Z0 =.OJ4]+_K-P-#F(L[5'.LQJ
M3KK 8G-%9IR$<,CT$QR[)S$E_A\Q5W@V-_XMV%@J7\ZGB9?'2\^WSFD6D-N
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
M"B\[:<#BY\!Y7-PSEOX\'02,/DU>SC@IN8UM_T (_).2A08FDV6"1.9**;!
M>!3:48@@7@C[NM"G"Q"AC$=&F ?(=& (P"3$O=JK9L] &T *N 3Q;'VS7K06
M)KBW@6%U)[[B>QV\ Z% WN'U2..]S@6[#+]E?W<OWG-Y'GR-3.A%GW$%H86F
M(= 8MP+=!1;I\K?KCN,Q;@Q,SU\59^Y(D^$>8QI&*\8+HB%7(F*NA4D#^.'9
MWQ[0 585"T5][9W\3VT)%BS:G'@TF&\!=P+X$D<GH>Z@.'7(.P&VN_L_'!]B
MH'_99$EM)D5AI_F><!MY0KJ"Q>%(WMW=7SH)M 14X23@[RV14+:$]0/6'V5L
MES90UQ.+QW]<):3#):[G&Y-M-W.NI%P&M+DY*^#AU7I86)X#^_R,L*;4Y*09
M4"9N*IH8@']_@R6GY0'LIUJ?#SNM3B>9O.L+:X!@5)%NP;GT0(2CQV*FXY6@
MQB8D/$6B0["GRG_'>_P/1>7 \I'*CC%@FLM_O G(\44'$*7S!<0RJM$VLGI[
M3N&HS,#F0Y0;!G[DNKXN/"B6YR;(0NR&G=U7M 3@8#WK)M.EWODG&K;YN HT
M?T;:+6X:!, 1ZAD\&6X$707?P+<&4LDST2Q G1_WV0I7#<K=%#:&I@&\  'J
M,K7I&1OBL/?B>CE8J+#;'1)1A=!JR5IFF_P1P#$X(L"L#,.'-RPOM(B?J$EM
M^''%F;%&  SZL_?LFS1XF$$/9V85,&HTM]M$J.(IF L/Y;/GN.21^L#!K9OK
MEA<\%/=M4,<)]SW7=!N%S5_4Y493JDEG\8M1_<7?N2A UD%_+'64%',7ET1-
M[B'(@ J"D'+[K"(>X1]MX&<>4RM9)M #;%8 \9LER(1SD\V\XR[@BTR0(P=P
M@/U&F05[Z\-JR;B%5,RFVQNTSE-:4X<'!27)13,P<1O*.,[^FX*#26M\GK37
M0QS<-@<':Z>A&1CH=5O=\>9#<.DP3N;[GH!?![P?1>_3DTV?!-^K"$\"&S>>
MZ[BP%) #>? A$YB[_6%KN$FS";=&-";+4_T=[2TV8J\*R^@ZU*]\-2HBLUY#
M_0BDMB^"8U90Q)4"-P[SF3[#F.G#*9 ]H#/.]0"X+&X[?;.("9L22WK65A%U
M@"\05+=%()3A?DNLE]FG+?((FEL,3_Q)KSKH,KY_!0$$CWVR7JAM<H4*5#Y'
M:(IM, 4S<=MJ] F[IR^'Y&+C46LX3CI#_>/%5*HH[J(JHJ"49C*Y783.%WU^
M<&;8[0UWPY8XCP?AA'\",1B.Y=LFI;M(0-TX^RQL(>$A^036P]0%3G1IFFC'
MQIR=M]P+'>-\XKO0 \*!Q_U68.DM?/NE$@</C:]^)E;/_.P 0Y8*"V("OJ5
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
MD]1A&?'TV.O0K,B-N_W#G30P!)CV&D?C3F;!S@CJ==(QU)(9%!M-P-U!,<J
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
M+$UP\\[YW;;U5\,T8=,L*11@E<9_+PLQYT3FTM2<VSEJSM&P,*LH'4U9H%+
M-6-(AOK5J,CLFMJR.<\RE<+8+'U->9M<B-]1YI6R1 VKD(]YXCET2L2ND??*
M!WV)*5E2B_E5?CIKX+WG-6L=&U?#I<6L3W9*[#X^(N<*QS[L[>*P2*LF5:BT
M:G6<7^56C1^4$X=LMJ1NNZ^0;F\,_PP&'YN9\W'O/WJVEQTO,1M%LIW7B#AL
MD+U>OMO)+I]W[5M8$;U&*#'%;:R,AUD/]$4S1PI<W00NSQLII3/."@14 '.2
MEB1F1 BS(EETZZI:?K--43_ ;-F4Q3_MAMJ5?ZFF+P!Y3=-^52TM<Z5X=@*5
ML>O3)E#DSD][7]KN_Y QU3=D4,B?TEK?=C+W[<F351]SL3Q2#BN1PUR# Z-1
MUBAX47*83WCA#:>4JKVP/6UZY>?30UM'0YSW0R'WH:PC#Q=<!G-RP8"/%?%P
M$WN(L9V_U>N4O=:]B1RT@3MEI?DJH[Z,ZTAA*Z<)I])O9ZW0*"6FDYL+O3TH
M4X<C90Y'DKW\B1[X$[KM/YJT;,>H[HO)X?PN!4D*TEL%B6E&^$>%2<06$_4_
MNQ&O=>/JXG/$Z>&X1*.F.5=UW;">_O&N_8[]CKH^^%V\\OSF[O+J[M/%S=>O
MD]O[J]/@AXPYSXS I^TS+M2==OO]NYT.$RM6@'^]^WXUK1&/"1%KC%X\K/OO
M6Z4K_7N9#P][G NB:3KL]>OZ-5-XJX6=H@R+3 TT]01]4(5H,]5Z@J$]FR0
M#^TI\6:47(-7X5CP#0&$22YLG<)*X)_'!7N" 6G[GDM42R?_M!]=,M$\_'JW
MW1G!+(AIPTL<,J?.L^'!4\1X?J:Z@4T'=*K[W-L!MX,XU*6JH\W82#J\S[19
M\2FAV ]2-SP?GL!%X&L]>.T"'H=?5(^X/GQ-LUV<AD/A&<U';ZE%'F8P:.0O
M6@!K!Z<F&,TW/4$8G)>E.:Q"!W[5@Z,5OD=E'A>NZ6\;+MZNQ=<O*?__:ROA
MM*VX:>WN]S9WT1[LW<\&@]!=&VX+>[:278LXAT&\3/BM12+J9ZWNB!UGP0>*
MR^B&#2Q$.KH18LHGNA/B>\>D'LC=)Z%5A(8*==69;KAS4UV<&A:*_,IWWWZ5
M1[*^]C(B)90+F$.G)NPE^$P(*G"<A5X8\L"C:F+8F[@S"N=WU84I8"C</0T9
M$?GW$-0W5[NCX?NE(N<S/6T3U??L=^O\>+&"%!T^&H,%V#&M2;Q_$/O&UA_S
M';* \->XH@3=X;K<T61YA$;1<N2]K5^Y<7NT33WY]#]5RU>=!9]^KZ/$MU0>
MB:#%,RYT6L4.76[HUH!IR:R>_.9Q=DD3%BZN&*#3:L.^%M'D7]KLO^W%,A5(
M YK23!(@29\CZ;N%D;Y>Q95 L\9<&;S]NF"+?4B)^M6X#H^OO,P(_4F[$LBB
MX^-:KJ'NP<EA=6-HK*J*7'4<D+[:/7FJ@HJUG-%D=LW#.TJ^Y9GG-AX6QK>]
M+MT*L5QU+62J^_PD%^HP/WFFR<-1>,""-K)?,E3>5F=+"DG!+G)CLI!J><9I
M"N\J3NHI!R*F,5Y#D6D,]9F@Y$,])K@^X0,W,>H,P^)U-NLFFW8+R\QQU&2'
M-[U+?V*3\P&V>$;)2U@+J 8U/ILNSLLJ6=O]SKS;2D9]8G?F1/7(ZDT3RZ=@
M:0O%KG.KUL^2&Y LB-IIG5V%.!1Q]#%MY&Z&Z2#7KHEK7YN_@3D4&FM 3;1H
M!VH%I\BZL:]_ L>ZF!F6RD!41V<NL<#90YARE:5NF#;0T>59('C_CKDB[/H=
M9@<_&_"1;_F>P5(^PGR'K'LXXK>.8Q<2&T9+\9174GZV[JGD/0YW*>A/S?1U
M^OG+IQXOL0X^"-,($HH@>AVS\D?6>_$!WG1/39X&-)ECP@UOQ=@;=+^?<*&$
M+U!]XFUYN-..3W*=#L+SP IY*+L""D\^CQ3EXU0U7]6%^^YS9&WAV,F%9EY<
MIYUI=9V5U<U"ST8<L4[8?V="F8/&CZ:N_5K _#N9YM]=SYV(E+?&B/*Y9!>!
M UMK.%I^QEFV_#AZ*TC8M2"\1R4S!W75+YZM@7U@Z2=@#+"Y,D@SG,_4'9F:
M2(XAOX7_KLV89 YK>#M)PNM)DDANBN^PV-\Y[\:M@6$E\OUB1U[,9@D^<3@9
M>(++&SC:79G$#EIE+\L]66/2%/)*R4S54W1N7$^_Q<3?!.-]A>$NHJ-M-/7?
M+[ZYCG?O@05"X_([M9_@*#)#3VWRTW#SLY#MK9Z 87'3!&2"]\\">P,?"U)\
M\Y^I8V@;X3G6D^$*AV,B<PNCV/I.V8/;R(.7\WTPE[!1GF;(Y- -$)/]W")_
M(=-?Z$Y<-[%K#EA?JS3^7U[5B/_P%_#9 @'0@ R/E!') !=$K(?@MIP:,!MJ
M+AAUN9."+HKP3%BFX%9RA^\CW#*RA%X?TV*9 S5G4N(&3LXZ#5*,\[]5A;C(
ML:6/F.;MH3RI\[EC_P0.(+$RRQ3\<,$&CLG3G7CI9KD*O\N%\8OX\A_T^9$Z
MDZ\W#Y?44PW3O9F&,(?GU +&>OG*7:=ULD7N]M VZ01ZDZ;A*5815;+$7URJ
MDHD.[X)QX32X"$4A'ZY^X6>'S4Q=OE\\'HY5.E_;V[*Q4?R3!R*7:8QGU;!@
MEG J@QUOFFGG;*(^P0.NA[H$<][YMS')^'6I<6)_BAV1W.7QJ%S-\1>J,].
M\R(_Q8%6,%R"*?3 MD=0 G/0A-A01:3Z XM@O@[5[">+Y?$CK1XYQ_# J&F.
MS]*OP9FCKL=.D.!?J2:&54%8?!-/IV&J/[*<#<&J#'CV/]?&/SU>8:#[[*Q+
M#43M9G]SZ(L!"P!^S?%'VW=AFE/#%)-Q*.AD"]09?YJ&NPN_H5&',1+UH>_Q
MZ(AI/!L>>X)5+(2%&6(J(FN</;IAY=Q_YO4,J6O'\W$RYYSDG&B>KHZ"S7VO
MS:CNF_1F^F=D)<L]Y][![(3N90<&])3/35O[L6/Q!(7M.$?''J0 W.@JT]['
M_?5I[V1SWCM)2WP?!CGG9'N@4DRA'__*+C\W9E@6^XS3,9\$[8T3SI*KFL=
MR>$.*E$XF:,MJ5]EFK:D?GG4[Q1(_6J48W!)]N$:/1?PB\ !<3_N:@4RL7W[
M77&&-\H9YC7#(N1N2R[3QCFR9*9U!YJZ93.=<T=? :<^J-D6==AX$ G<Z[TE
MX8U9,6_[=O:TF#4'@[+Z);77H!:_E7AY[=_#XUHG1ZZ-UW2[E5S+FVOM'+DV
M3(;$<N-:49;HD Q.@%G!0DUSQ[ =<8O +Q1LEP5/W>HLS]Y#Y+8E0E+=!; A
M7QS[^19IQH/F\.QM0+!<@#XRX&P?BO([,'9W(NS.T449'HJ'<F#L;D?8G:-O
M,TC>!];>2![%<2UF/1GBE.5)^YEIAUUPJE5N03N]-9634J=6S?&BC.B:$F?)
M\*H97I09;9X5/21C>1=@/;JB?H"EZ)OJW&4YP>GI$(=F.;> !ZQ+B0A)%]M8
M7Y%V-]/)?&["RQ]->L]I>#/]NB1@R7:TG[.O^O&PU&I]^%^05>UVUH#F2 &H
MF0 49&7[.4=T/VZQLROEQ*7>J&[^U@;#7"C$1 9C68<I2F[4:8J2&W6:H@S5
MY9Y902U=YE3L=,^;YZF@<R@75+7GFLR$:2+7FI()<T0.^!Y0+:5Y&3G-4?*C
M7G.4_*C7'%-4X&\"<HFLEKR66SMYZ3N8)!SIZL1*_CA,SRL6*IIX(;.UY';]
MA0XOB+T-:@@GEGXMB@NO>+UD'@'F=FC=VEOCRTJ[G40:W 5[J8 U9@FB[K[&
M;J>3ND@$7G*QC-=XH5A-S:I!@W+26+X!EK6*4M MY;#L*@:?\VRBBKI3S&9X
M41TL:TV6FX;OX)6J%_;S7+469*:ZX:OF-J*[&""0:UZZ'2SD+;R:\-?O<Z39
MG4>C4;H<<L+S[D_+VF)8\UQ=L#)44=(+M.*40]IO:A'E\1)B?FI-15BHIFH[
MRGSD+M:3N_ZC:^@&B X\B^70T?+JH"@:"/!GZ[Y%IA34-,C(OT&%N;K!P]M*
M*'@<+F+EC_BBX(&@4C[V2(M<K_2XVU\);D$C@?6Y8+DN;-_RG 5'%?!='#"4
MUHGOS6S'\!8[  ID4!-K1#!RNZJ&5!8%[K:+8"%349@>$JISLNRG]W9-6O@U
M997$[J836]Q<,[@ $,JE!D9]*#H,!O&F. X ?B(NO5?NO*O9T&Q3QE06QP"R
M/?)(*6:'VR\&:C9[*]2/@-JX4ATL80)IF*N>@PT?=P06R0UR8]Q*)GTD(#=\
M2S=<F-^CC[N&BDGC7VS?"=5,3+>Y!FIH#E2!#QD,SPS'@TV'C2Y5"WXW%R
MAO6"!I UJ(R,/75!2"FH*R$:P5]>P921Z'R$O<!EXI1 (H )%B(C>A$-_,I0
M+3BO<*K_%O!"C*F\A65"'!E.-CP&[Q&H&/'O!BL7,H%ZX=7P9C/;9(X%DY$6
MN:0>-O:T8G*M/N,&Y;\9*TY$V%DS8AM,@7N\0(+B*N:,6\#DY5Y(1<I;#S-!
MGQ ="D3/=E 178*J,YGVVPM/8@/07@#?-MYP:.F,\^\#F[7N^!MX9S 1!J?9
M/?NF,O@HX)2 XV)V5E"/A.1CW(]";8&=Y3L/N9X YDM9^[ (G74#>\\.Y\W\
M*-@Z@13JU 7Y5:)0I I,P?*G(%RX:ER4JW),0G2LP64%$9P[S&WE#6W!)U/!
M6?N/;W#%SCY4P?E<P)N(NW ]^@P$6_K;L+89:$Y'?U4=RG4->XT]]5Y5\<[
M0N-\_6?F%KH^FD?*P7YLYTG%S<(>A@FKX).CFGGT0?$@WAK;S<B:*;B--L>A
ML='X\DF[U'DQ$"^&4P#>I++K'?3P[>=GFZF49[;LU/49$=[:OC?WO24FW&;-
M#YL1+/+-E L.,_9<E-Z6AR2^'-7^U]^^K#':GURJH0EXM1W=I2 =WJN=YAT%
M(NV*F05B@P*/"HZ1VA'MC@5="=Z/S=U3<BM^OT:!-::P%1@5/N!VZK;/;J_9
M#YVSCXR0#Z#Z16Q&?9Z?D3_ #P7!8WLK^,H#^],?P?>J,?ZXD6ZO Y*(52-B
M$ B$XZ@+%)49*)5/'M5FEFW:3PLP14_82IFP.T,NJK9E:S,'M;JI/E(SOI7
M2!B(EX1XO0I_@+$ANC.";<!<5)7Y^M1C;T?!I8[&3Y6ZCP82'@->F_HK6$0A
MM^SPQ6VR15_! #/11FLS@6_8Y ]5F\$6:O%?O]DO2UAAP8<D#1);1.QZ@I!9
MD1DDIHQ&ST&EH"!E#,]V DT*[\:@%/@ -M>NW#?F6@S'>4:C'EEGY#Q/'9M%
M[14&)/1L8S1 85;5<N$'1S5,O.6DSM-""8< JN%[G_!S^'FI!&%(?I!?73YL
M-CM.4+0?#*$OF &9FFAG<'/^8,.#=\_+"!G3MTGR&]&6LP*CY@NWW$^#6TX$
M <./0SRLS0"P2]]A9R3?\?=5(.)2899W6%1ROAD6MXI27#'*,DXHP^Q[\=FO
M0U@K&629;.5IK7&1D:P9>-!/ WK.J8O]NN261C:Q/P^\2H.Y0NC>+,^=Z(;!
M;PQNEYOQ .\S.!X^(B+M#(^TAB8>B9V5$2097%A=5<B5[X"WK@2@R??@6\[
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
M\4@JTT*5:97L[725<9%@''LF#Q8D,H6D>\A:/\F-JKDA3WL[G/9L3S5E3*V
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
M"#$?%%C56@"Q?\#*8)]J,Z1'.#8^2?PYCHD;"50%[$23PG82 P1O=;'Q+@P
M%OO5\& 0-@?3>$;JS&$;:C >M@5>D'O>XIKOQGZ[\^''1[%6<FWQ)LE$A.!A
M?CIMD<W2$FOGFYNX3(!:<3+@ G4ZMUW6:<2PD,Z@+3TR]2T=R''M8;MCVW>
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
MLR5<'([W;.LA>/=9!"V/7TEB@ @8J84WE/@..*3#+ZB5F)E#\>40A!4%'!B
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
MTT&TVS/TIK@"ED8XK5QRLYVOS%@BROK2+CZ7*"+9,H%5CT.0X$:(DV2OJ \
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
M;-:^<^Q;=NOTK%[;L;H8Q@Q[R ;WP]&]U1NS<?]G>-^2L3VXP_NN/6+-VSY
M;+PYD[$HZ05W12-4JX@O"JW:!2_5+L_X>;-"4UO,ZG5.6/7)>[SJOM>!U<3(
MR&[?#YVQ@\/MK^T[J_?9SN>L]I@8J_WGXK*XY>/] VB/#FO$K$Y_,+8[CWP#
MM,:=%]4Z ?S_N,K09@UOK)X]*O6_=NUO+".L7JW6?\)7K?X&H%I.D77X4GKY
MW*C,1G,9SXK,%5$L_36+9SQNL.<1_/X6 &IEYK 97PH6B:44*^'A7*D9#\.$
M!QA<J"AF*F2W*IJ?$*#5TA^;V%0^LW0<J9Y:\B)S0K=\Q7[@Y#<QIUYF-US#
M""">K]D#< 7"FXIB:E5FCJ>P*E0Q<[$7ER&L7;,DC*-$,!WS6,P1)(2? Q"B
M18()G[L8BIB"DUBLTGE/)H3"%5KS:$U3YOQ!X%R1SVTWU1CT@ 9G!J2R= AF
M,%=&;C+'M!#K <43$0._[HSIA'[LUJ]$)+)-R(*YU('@G@RG;(7H@85Z(5R#
MD/9= )OR8.<2RSPV6>_S</7>P751SN>>=8=@O@QA+W&WLZ\(7V Z7D=[[V7H
M(_QX++&/#-T@\; G.'P:JD7X04;!FBW !'F1O!L$.S=E!.D#!(@$3]+^19J1
M!)@ URCP9T[5!I;+]8SY@5KIC=\B,96(<8Z#. VF\ &VF,_M^-<;-'NH/\@%
MEV4V?H3SMU]JE[]?Z8SB3&LH?)3O2SP: QS&(V&H@NER$@@RB0FX:1)(/:/I
M-&V.W*'\H6=/:C=0.HD0[I16D0I2TA:1<H6'<<W.P)$G0'K*@_W=G?%P*IB%
M@!TF 6:<5C<_G8EM!:0C3JN;M.K1,DF5($R=3W@99<E>3*0N(N-.!0X9_RET
M_U70_1UT<L5A[&$G$O'7E(MLB-K+QN6O+PPOM"+YG"<T.E108[1J%PCLF3@H
MDHZZ/-&G+R$]FPBV/2E52)5$V  YMI3:I"YFB=#L0\5SE_3[^A&)@!NG9A*Y
MH[&8:0N]E!  8-$JD!Z/#=")EI[DD20#I,[G2(2-I(6T5:))74U6:2/%)M&5
M%D 40UEHU8(CG-PDX"10L,N@V*DT5J2:OU^K\-M$T$1("-8+[S62\<]\/#EG
MCUR<SYV<.4]<?7K.G>QQ1 DZ*'(DURKDI%9<(PBHEI)W>>1MB(;O)9_(0,9K
M4O!CQU+<&9\8NM.047X^=ZQ8I:KX/;-HD40+^%N;DN.Z*O(, E.6IR)$)0G@
M=KP1"PHHFH*>(W4M D\NH",?[USWG(DE#Q(3Y&2X\'W41[D$8JV-Z?'1 G)"
MTJ:/QRN?<246(N%T6F G*HF/(C"#I\@*W\X6U$3X/V^!BFRRZ4\(3\8$\%S1
MYG2)_UAO>.<;0Y\21DUJ5G?,FV-.>4%ZD4 JUTTB8F4G1OG<TUWG2L=82E<G
M[*5=;/1W BW#UF?'<?A@$V%_,#F#C39*F.XZ?-R[G:>@9EQOE9L2QD2#\(R4
M&#:R-%^CA7X00=9J'\POOH2@_>S>,G25UN?W;<\^O;(],S>V;:0<1/&^NW81
M38P?6I_//2_<3\KC!AI'A8Q5I+=2:0:PY1Q7HU@8USY=-5'087KE24 SZ\_@
M4&2GINS'_U2B-T(M_DXDD)N 2T*7\)\W7G-[_*?=C;D\4 F2H)]:+6H#72E
M5R9PVR9C)?@#*59: 8QFF>)E;HV;B\0Q+SR?I&D[P".3E4?"GGM8J<4VZI_S
M6%;RL +<HS 54]G4T$R=S,$1"#'&9%)S].:U2X@/]0&Z#U(^/T*8%<&(,)D!
M3LWU-R._F$J'#)<J6 K2CY!/LVM\E"63F"\"M19XNYJI-(/X(]?"%<]+ZPN:
MGO(/5.-M/AMUZ-N#A;8A^"V<Z,55[5]%5J_6+PX/WMN4SCWXI/8$1:&5;F=V
MH2_;UDW79FV[VQT-K+;3^WQ=J!;,\\#J=#;/?SF=\=UUX;+Z:X'=](<=>VB&
M,PCI2*G=[W:MP<AN;'[YH86'=-!W[WS.0!JVLE\ZFX-K59S<:E;&'?HQW)NZ
MP;! +)0FR*"'DL1]UA,-OE328R_$D!W[)?N2"!H+IW],K='0!+DGHMW0=V8N
M&.R7JOGWPBBHZ$KZ]9!M/AZ2XW9$?!@)AR ^',#[?=)N?4'590.TEP!,5\3V
M3 J?W6ZSOK^KR^_\!;LUIAJ 3A==UR"],>#\9Y&\+#)?!&1WNK6]Q.1SV?GG
MCX.0>FBC(\9QE8[S!>/9G[S2/*W0G\<P:/ZJ]C]02P,$%     @ 48*15C(,
MK^.L!   50X  !$   !D-#$U-#$U9&5X,S(Q+FAT;<67;4_;.A2 OR/Q'XXR
M;0*I;RFPL9)&2IL N;=KJC3 ^.@V#K&6VKF."_3^^GN<I-#QLETD&'Q ];%C
M/^?=MDZC;R/;.O4<U][>LB(_&GFV][VYUVV95KL:HKQ=+P!K$+B7,#@9!J,@
M[!L7IW[D&7H"MK=PW9!R1:5MN?XY3*/+D=<W;EBLTMYAZX!Q TC&KGC?R&BB
MRJ^LR7K9@L@KQIM*Y+U.KHZ@'L^$4F)1B1+!5;-@_]*>>3].R()EJU[$%K2
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
M<GJ1,_[:X2Z*<!E'O2=$QZ#K3Q'&,86L$&G%!6$2R4A1;CKLFEXF<8P L'=H
MM>%"BCQDM?RI\%Z%N.&*%?6L0T2S=5S0)E(J<Z=9Q5)9A8T?$/$RC<8F6J0J
M8AFT/V!65V2;=XA4LC@O[(<(]G;7 !YTXN_@&(-"#/DN^F9D#B=X2CJ3B3\S
M+7=ZV3=:1CZ>F;9=C3^Y=C#N&Z>MMP8,O;GMS//I$D(Q4\>[T\2<^4ZW^O/#
M4!_RHN]->'/2D.:#\H]=.6ZWT#,V^<#67_,]TPI#2FYH?8&]Y&N=<=UWNN16
M8%-Z)H;2[75Y "&-QA/I?N2<:^NIA9 K*G=3=Y")&(&\:>6?9\JAF37AV^ZJ
M$[<CXM5(> CBU0'\KS,%CF:2X7J*!H^;[M;-Y5*LN6+\IC(XWA<<_NA2^:7%
M;T*&[Q%8_P+O]P@W+MH/]H(-MFA%.60*^X-N[U6KQ\-P^_TY%N&!MZ!HGTJ!
M>=,=1>QN&>4E0X>_8=@I%WCB25HV5]SN,<-P+3G+HF*G_WJ9D,"PH2+F,(1U
MBC,:-![G11O5G.(+%1)<OEX5-=W4KV(XF;_!_0M02P$"% ,4    " !1@I%6
MIYHHM)8>  #950$ $0              @ $     86QO="TR,#(S,#$S,2YX
M<V102P$"% ,4    " !1@I%65CJW:J@9  !I?0$ %0              @ '%
M'@  86QO="TR,#(S,#$S,5]C86PN>&UL4$L! A0#%     @ 48*15IG.2Z0-
M5P  $4X% !4              ( !H#@  &%L;W0M,C R,S Q,S%?9&5F+GAM
M;%!+ 0(4 Q0    ( %&"D5963[_S(;8  (:^"@ 5              "  >"/
M  !A;&]T+3(P,C,P,3,Q7VQA8BYX;6Q02P$"% ,4    " !1@I%6E1>I,U"*
M  !UR @ %0              @ $T1@$ 86QO="TR,#(S,#$S,5]P<F4N>&UL
M4$L! A0#%     @ 48*15AA&T%VOB0( N3P@  \              ( !M] !
M &0T,34T,35D,3!K+FAT;5!+ 0(4 Q0    ( %&"D58(3_22^0(  (\,   0
M              "  9-:! !D-#$U-#$U9&5X,C$N:'1M4$L! A0#%     @
M48*15O5!U9+L @  +P<  !$              ( !NET$ &0T,34T,35D97@R
M,S$N:'1M4$L! A0#%     @ 48*15K<H[W^J!P  I!H  !$
M ( !U6 $ &0T,34T,35D97@S,3$N:'1M4$L! A0#%     @ 48*15D=XI4FM
M!P  7!L  !$              ( !KF@$ &0T,34T,35D97@S,3(N:'1M4$L!
M A0#%     @ 48*15C(,K^.L!   50X  !$              ( !BG $ &0T
M,34T,35D97@S,C$N:'1M4$L! A0#%     @ 48*15A^U-ZZA!   R T  !$
M             ( !974$ &0T,34T,35D97@S,C(N:'1M4$L%!@     ,  P
* 0,  #5Z!     $!

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